Slide 1

Slide 1 text

Munetoshi Ishikawa 
 
 Jasmine Tea ͱ͍͏ݴޠʹ৮ΕͯΈΔ

Slide 2

Slide 2 text

Jasmine Tea ͬͯԿʁ 1/2 ςΩετϓϩάϥϛϯάॳ৺ऀ޲͚ͷݴޠ (& ࣮ߦ؀ڥ) https://jasminetea.app/

Slide 3

Slide 3 text

Jasmine Tea ͬͯԿʁ 2/2 ࣮༻ੑͷߴ͍ϓϩάϥϛϯάݴޠ΁ͷҠߦʹྑ͍͔΋ https://jasminetea.app/ ϏδϡΞϧϓϩάϥϛϯά
 Scratch ౳ ςΩετϓϩάϥϛϯάೖ໳༻ݴޠ
 Jasmine Tea ౳ ࣮༻ੑͷߴ͍ݴޠ
 Java, Python, JavaScript, C/C++ ౳

Slide 4

Slide 4 text

Demo 1 https://jasminetea.app/

Slide 5

Slide 5 text

ݴޠͷಛ௃ 1/3: จ๏ BASIC ʹνϣοτχςϧ https://jasminetea.app/ do d = random(0, 3) * 2 + 1 direction 0, d move 0 do while moving(0) loop loop ϥϯμϜ΢ΥʔΫͷίʔυʢͷҰ෦ʣ

Slide 6

Slide 6 text

ݴޠͷಛ௃ 2/3: ஋ͷܕ ܕ͸ 3 ͭ: ਺஋, จࣈྻ, ഑ྻ // ਺஋ p = 3.14 // จࣈྻ t$ = "jasmine tea" // ഑ྻ a@ = [3.14, "text", ["another", "array"]] https://jasminetea.app/

Slide 7

Slide 7 text

ݴޠͷಛ௃ 3/3: ม਺ͷ୅ೖɾҾ਺ - શͯ஋౉͠ - ഑ྻ͸ deep copy - ࢀরͳ͠ɺϙΠϯλͳ͠ https://jasminetea.app/

Slide 8

Slide 8 text

৽͍͠ϓϩάϥϛϯάݴޠͰ࠷ॳʹ΍Δ͜ͱ ΈΜͳ͸෼͔Δ͔ͳʁ https://jasminetea.app/

Slide 9

Slide 9 text

৽͍͠ϓϩάϥϛϯάݴޠͰ࠷ॳʹ΍Δ͜ͱ ΈΜͳ͸෼͔Δ͔ͳʁ ͦ͏ͩͶ hello world https://jasminetea.app/

Slide 10

Slide 10 text

৽͍͠ϓϩάϥϛϯάݴޠͰ࠷ॳʹ΍Δ͜ͱ ΈΜͳ͸෼͔Δ͔ͳʁ ͦ͏ͩͶ hello world
 LISP ΠϯλʔϓϦλͷ࣮૷ͩͶʂ https://jasminetea.app/

Slide 11

Slide 11 text

LISP ΠϯλʔϓϦλ ɺ࡞Γ·ͨ͠ https://jasminetea.app/studio/projects/faBgYW7urcviNQDPSWQy https://jasminetea.app/

Slide 12

Slide 12 text

޻෉͕ඞཁͳ఺ 3 ͭ https://jasminetea.app/ LISP ΠϯλʔϓϦλ

Slide 13

Slide 13 text

޻෉͕ඞཁͳ఺ 1/3: σʔλߏ଄ Ϣʔβఆٛͷσʔλܕ (class/struct) ͸ͳ͍ https://jasminetea.app/ LISP ΠϯλʔϓϦλ class Foo ... struct Bar ...

Slide 14

Slide 14 text

޻෉͕ඞཁͳ఺ 1/3: σʔλߏ଄ cont. ղܾ๏: ഑ྻͰσʔλߏ଄Λ࡞Δ https://jasminetea.app/ LISP ΠϯλʔϓϦλ [[["x"]],[["+"],["x"],["z"]],[[[["z"],[0]]],...]] ϥϜμͷσʔλߏ଄ ύϥϝʔλϦετ ϘσΟͷߏจ໦ ϨΩγΧϧείʔϓͷελοΫ

Slide 15

Slide 15 text

޻෉͕ඞཁͳ఺ 2/3: είʔϓ είʔϓ͕ಠཱ https://jasminetea.app/ LISP ΠϯλʔϓϦλ x$ = "global x" function foo$() x$ = "local x" return "local y" end function y$ = foo$() print x$ ؔ਺಺͔Β֎ͷม਺ΛࢀরͰ͖ͳ͍ "global x" Λग़ྗ

Slide 16

Slide 16 text

޻෉͕ඞཁͳ఺ 2/3: είʔϓ cont. ղܾ๏: ഑ྻͰ͢΂ͯͷ৘ใΛ౉͢ https://jasminetea.app/ LISP ΠϯλʔϓϦλ x$ = "global x" function foo$() x$ = "local x" return "local y" end function y$ = foo$() print x$

Slide 17

Slide 17 text

޻෉͕ඞཁͳ఺ 2/3: είʔϓ cont. ղܾ๏: ഑ྻͰ͢΂ͯͷ৘ใΛ౉͢ https://jasminetea.app/ LISP ΠϯλʔϓϦλ x$ = "global x" function foo@() return ["local x", "local y"] end function result@ = foo@() x$ = result@[0] y$ = result@[1] print x$

Slide 18

Slide 18 text

޻෉͕ඞཁͳ఺ 3/3: ܕνΣοΫ ม਺ܕ͕͋ΔͨΊɺ൚༻తͳؔ਺͕࡞Γʹ͍͘ https://jasminetea.app/ LISP ΠϯλʔϓϦλ function equals_number(x, y) ... function equals_string(x$, y$) ... function equals_array(x@, y@) ... result = equals_???(42, "42")

Slide 19

Slide 19 text

޻෉͕ඞཁͳ఺ 3/3: ܕνΣοΫ cont. ղܾ๏: ਺஋/จࣈྻΛ഑ྻͰϥοϓ͢Δ https://jasminetea.app/ LISP ΠϯλʔϓϦλ function equals(x@, y@) ... result = equals([42], ["42"])

Slide 20

Slide 20 text

ʮ഑ྻ͸͢΂ͯΛղܾ͢Δʯ - Munetoshi Ishikawa, 2023

Slide 21

Slide 21 text

Demo 2