ࢁ࡚ਐ ;"$,:
w 5XJUUFS(JU)VC(NBJM;"$,:
w भࢢཱେֶࠃࡍڥֶ෦
w ।ڭत
w φοδࣾձ࣮ݚڀηϯλʔ
ηϯλʔ
w 1FMFNBZΛݚڀ։ൃ
w &MJYJSͷฒྻωΠςΟϒίʔυੜܥ
w ݱঢ়Ͱ4*.%໋ྩΛੜ
w কདྷෳͷίΞ(16ΛۦಈͰ͖Δ
Α͏ʹ͢Δ༧ఆ
4VTVNV:BNB[BLJ
ఏҊख๏ͷ֓ཁ
w .VPO5SBQͰίϯτϩʔϧάϧʔϓΛࢦఆ͢Δ͜ͱͰɼϝϞϦ$16ͷར༻Λ੍ݶͰ͖Δ
w ͜ΕΛར༻ͯ͠ɼϝϞϦ$16ͷར༻Λదʹ੍ݶͨ͠ɼϢʔβʔ͝ͱͷσʔϞϯϓϩη
εΛىಈ͢Δ
w .VPO5SBQͰɼ͜ͷσʔϞϯϓϩηεͷࢹɼෆ۩߹࣌ͷ࠶ىಈΛߦ͑Δ
w .VPO5SBQͰੜͨ͠σʔϞϯϓϩηεʹDISPPUΛ༻͍ͯϑΝΠϧγεςϜͷϧʔτΛ༩͑Δ
͜ͱͰɼσʔϞϯϓϩηεʹࣄ্࣮ͷݸผͷϑΝΠϧγεςϜΛ༩͑Δ
w ͜ͷࡍʹ0WFSMBZ'4Λ༻͢Δ͜ͱͰɼڞ௨ϑΝΠϧ܈ͱࠩϑΝΠϧ܈ΛͦΕͧΕผͷ
σΟϨΫτϦʹ֨ೲͨ͠ঢ়ଶͰɼ݁߹ͨ͠ԾతͳϑΝΠϧγεςϜΛ࡞Δ͜ͱ͕Ͱ͖Δͷ
Ͱɼޮ͕ྑ͍ϑΝΠϧγεςϜΛߏஙͰ͖Δ
w /FSWFT44)Λ༻͍Δ͜ͱͰɼϙʔτ൪߸Λࢦఆͯ͠44)σʔϞϯΛ࡞Δ͜ͱ͕Ͱ͖Δ
w ͜ΕΛ௨ͯ͠ɼϢʔβʔ͝ͱͷσʔϞϯϓϩηεͷΞΫηεखஈΛઃ͚Δ͜ͱ͕Ͱ͖Δ
18
4VTVNV:BNB[BLJ
Slide 19
Slide 19 text
.VPO5SBQ
w &SMBOH&MJYJS͔Βىಈ͢ΔϓϩάϥϜσʔϞϯɼΞϓϦ
έʔγϣϯΛִͯ͠ਖ਼ৗʹಉͤ͞ΔͨΊͷػߏ
w ίϯτϩʔϧάϧʔϓΛઃఆͯ͠ࢠϓϩηεΛىಈ͠ɼىಈ
ͨ͠&SMBOH&MJYJSͱҟͳΔϢʔβʔάϧʔϓͰ04ϓϩ
ηεΛىಈͰ͖Δ
w ίϯτϩʔϧάϧʔϓ DHSPVQ
ɼ-JOVYΧʔωϧ͔
Βαϙʔτ͞ΕΔΑ͏ʹͳͬͨɼϓϩηεάϧʔϓ͕$16ɼ
ϝϞϦɼσΟεΫ*0ͳͲͷϦιʔεΛར༻͢Δ͜ͱΛ੍ݶ
ͨ͠Γִͨ͠Γ͢Δ-JOVYΧʔωϧͷػೳ
19
4VTVNV:BNB[BLJ
Slide 20
Slide 20 text
.VPO5SBQ
w &MJYJSͰ࣍ͷΑ͏ʹ04ϓϩηεΛىಈͰ͖Δ
iex> System.cmd("echo", ["hello"])
{"hello\n", 0}
w .VPO5SBQͰಉ༷ʹ04ϓϩηεΛىಈͰ͖Δ
iex> MuonTrap.cmd("echo", ["hello"])
{"hello\n", 0}
20
4VTVNV:BNB[BLJ
Slide 21
Slide 21 text
.VPO5SBQʹΑΔσʔϞϯϓϩηεͷىಈ
w BQQMJDBUJPOFYʹ࣍ͷΑ͏ʹهड़͢Δ
ͱzMPOH@SVOOJOH@DPNNBOEzΛσʔϞϯϓϩηεͱͯ͠ى
ಈͰ͖Δ ΞϓϦέʔγϣϯ໊͕)FMMP/FSWFTͷ߹
21
4VTVNV:BNB[BLJ
Slide 22
Slide 22 text
.VPO5SBQʹΑΔϝϞϦ੍ݶ
w λʔήοτ্ͷJFYͰ࣍ͷΑ͏ʹ࣮ߦ͢ΔͱɼϝϞϦΛ੍ݶͯ͠MTΛ࣮ߦͰ͖Δ
w ্,#ͯ͠ޭɼԼ,#Ͱ࣮ߦͰϝϞϦෆͰࣦഊ͍ͯ͠Δ
w DHSPVQ@CBTFͰࢦఆ͍ͯ͠ΔGPPίϯτϩʔϧάϧʔϓ໊Ͱɼຊདྷίϯτϩʔϧ
άϧʔϓΛ࡞͠ͳ͍ͱ͑ͳ͍͕ͣͩɼͱΓ͋͑ͣదͳGPPͰ࣮ߦͰ͖ͨ
w ಉ༷ͷํ๏Ͱɼ$16ͷ༻ʹ੍ݶΛՃ͑ΒΕΔ
22
4VTVNV:BNB[BLJ
Slide 23
Slide 23 text
SPPUGT@PWFSMBZʹΑΔσΟϨΫτϦͷෳ
w NLEJSQSPPUGT@PWFSMBZTIBSFCJO
ͱͯ͠λʔήοτͰ࣮ߦ͢Δͱɼ
TIBSFCJOͱ͍͏σΟϨΫτϦ͕Ͱ͖Δ
w λʔήοτ্Ͱ
DNElNPVOUCJOECJOTIBSFCJOz
Λ࣮ߦ͢ΔͱɼCJOͷΫϩʔϯ͕TIBSFCJOʹͰ͖Δ
w ͜ΕΛར༻ͯ͠DISPPUΛ࣮ߦ͍͕ͨ͠ɼॳظঢ়ଶͰDISPPU/FSWFTʹΠϯετʔϧ͞Ε͍ͯͳ͍
w ͜ͷखॱͰΠϯετʔϧͰ͖Δ
IUUQTHJUIVCDPNOFSWFTQSPKFDUOFSWFTCMPCNBJOEPDT
$VTUPNJ[JOH4ZTUFNTNECVJMESPPUQBDLBHFDPOpHVSBUJPO
w ·ͨɼUBSHFUFYTʹԼهͷΑ͏ͳઃఆΛ͢ΕNPVOUͰ͖Δ͕ɼΦϓγϣϯͷࢦఆ͕͏·͍ͬ͘
͍ͯͳ͍Α͏Ͱɼਖ਼ৗʹ࣮ݱͰ͖͍ͯͳ͍ͷͰɼཁௐࠪ
DPOpHOFSWFT
FSMJOJU
NPVOUlCJOTIBSFCJOTRVBTIGTSP
SFMBUJNFCJOE
23
4VTVNV:BNB[BLJ
Slide 24
Slide 24 text
JFY@TTI@TIFMMΛར༻ͨ͠γΣϧϓϩηεͷ࡞
w /FSWFT44)͔Βੜͨ͠ɼJFY@TTI@TIFMMΛར༻͢Δ͜ͱͰɼ
TTIͰϩάΠϯͰ͖ΔϙʔτͷՃʹޭͨ͠
w NJYFYTͷEFQTʹ࣍ͷઃఆΛ͠ɼ
\JFY@TTI@TIFMM
d
UBSHFUT!BMM@UBSHFUT^
UBSHFUFYTʹ࣍ͷΑ͏ͳઃఆΛ͢Δ͜ͱͰɼ
DPOpHJFY@TTI@TIFMM
QPSU
BVUIPSJ[FE@LFZT"QQMJDBUJPOHFU@FOW OFSWFT@TTI
BVUIPSJ[FE@LFZT
ඪ४ͷϙʔτͷଞʹTTIͰϩάΠϯͰ͖ΔϙʔτΛఆٛͰ͖Δ
w JFY@TTI@TIFMMΛࢀߟʹɼΧελϜγΣϧϋϯυϥΛ࡞͢Εɼ
ҙͷϩάΠϯϙʔτΛ࡞Ͱ͖ͦ͏
24
4VTVNV:BNB[BLJ
Slide 25
Slide 25 text
ఏҊख๏·ͱΊ
w SPPUGT@PWFSMBZͱFSMJOJUΛ༻͍ͯɼDISPPU͢ΔઌͱͳΔΧελϜϧʔτϑΝΠϧ
γεςϜͷσΟϨΫτϦΛ࡞͢Δ
w JFY@TTI@TIFMMͱ/FSWFT44)ΛࢀߟʹΧελϜγΣϧϋϯυϥΛ࣮͢Δ
w ͦͷதͰ.VPO5SBQΛ༻͍ͯϝϞϦͱ$16ͷར༻Λదʹ੍ݶͨ͠ϓϩηεΛ
ىಈ͢Δ
w ͦͷϓϩηεͰDISPPUΛ࣮ߦ͔ͯ͠ΒɼγΣϧͳΓJFYͳΓΛىಈ͢Δ
w ՝
w FSMJOJUΛ༻͍ͯNPVOUCJOE͢ΔΓํͷௐࠪ
w ্هͷΑ͏ͳΧελϜγΣϧϋϯυϥͷ࣮
25
4VTVNV:BNB[BLJ
Slide 26
Slide 26 text
ϑΝΠϧγεςϜͷઃܭʹؔ͢Δߟ
w /FSWFTEBUB چ໊শSPPU
ʹಡΈॻ͖ՄೳͳϑΝΠϧΛஔ͘
w UNQҰ࣌ϑΝΠϧΛஔ͘ ཁ֬ೝ
w TZT
QSPD
EFWʹγεςϜϑΝΠϧ͕ஔ͔ΕΔ
w ͦΕҎ֎ͷॴͷϑΝΠϧ FUD
CJOͳͲ
ϦʔυΦϯϦʔͰ͋Δ
w UNQͱEBUB7.͝ͱʹҟͳΔϑΝΠϧγεςϜʹͳ͍ͬͯΔͱ߹
w ίϚϯυϢʔβʔʹΑͬͯՄࢹੑ͕ҟͳΔ͔͠Εͳ͍
w 7.͝ͱʹݸผͷϧʔτΛ࡞ΓɼFUD
CJOͳͲͷڞ༗͍ͨ͠ϑΝΠϧ܈
ΛNPVOUCJOEͯ͠ɼͦΕҎ֎ݸผʹͳΔΑ͏ʹߏ͢Δ
26
4VTVNV:BNB[BLJ
Slide 27
Slide 27 text
ఏҊख๏ͷ੍
w Ϣʔβʔ͝ͱͷσʔϞϯϓϩηε͚͕ͩ༻͢ΔϑΝΠϧ܈Λมߋ͠
͚ͨͩͷ߹ͰɼϑΝʔϜΣΞશମͷߋ৽ͱγεςϜ࠶ىಈΛඞ
ཁͱ͢Δ
w ͦͷͨΊɼϢʔβʔΞϓϦέʔγϣϯΛॻ͖͑ΔʹɼଞͷϢʔβʔ
ϓϩηεר͖ࠐΜͰ࠶ىಈ͢Δ͜ͱʹͳͬͯ͠·͍ɼ͔ͭμϯλ
ΠϜ͕ੜͯ͡͠·͏
w ͜ΕΛճආ͢ΔͨΊʹɼγεςϜΛଟॏԽͯ͠࠶ىಈͷλΠϛϯά
ΛͣΒ͢͜ͱͰɼμϯλΠϜΛͳ͘͢ඞཁ͕͋Δ
w ݱঢ়ͰɼσόΠεʹλάΛ͚ͭͯɼλά͝ͱʹॱ࣍/FSWFT)VC
ʹΞοϓσʔτ͢Δ͜ͱͰΞυϗοΫʹ࣮ݱ͍ͯ͠Δͱͷ͜ͱ
27
4VTVNV:BNB[BLJ
Slide 28
Slide 28 text
·ͱΊͱকདྷ՝
28
4VTVNV:BNB[BLJ
Slide 29
Slide 29 text
·ͱΊͱকདྷ՝
w Ϋϥυ্ͷίϯϐϡʔλγεςϜͷফඅిྗΛݮΒ͠ɼཧΛ͘͢͠
͢ΔͨΊʹɼ/FSWFTPO$MPVEΛఏҊͨ͠
w ຊൃදͰ.VPO5SBQΛ༻͍ͯϢʔβʔ͝ͱʹԾԽͰ͖Δ͜ͱΛࣔͨ͠
w কདྷ՝
w %PDLFSͳͲͷ04ϨϕϧԾԽʹΑΔԾػցʹ/FSWFTΛΠϯετʔ
ϧͨ͠߹ͱൺͨ࣌ͷ༏Ґੑʹ͍ͭͯݟۃΊΔඞཁ͕͋Δ
w ۩ମతʹ࣮ͯ͠ϥΠϒϥϦΛఏڙ͢Δ
w ͜ΕΛਓӴ͔Βͷେͳը૾Λॲཧ͢ΔίϯϐϡʔλɾΫϥελɾγ
εςϜ<:BNB[BLJ>ʹԠ༻͢Δ͜ͱΛࢦ͍ͯ͠Δ
29
4VTVNV:BNB[BLJ
Slide 30
Slide 30 text
ँࣙ
w ຊݚڀՌɺՊֶٕज़ৼڵػߏݚڀՌల։ࣄۀݚڀՌ࠷
దల։ࢧԉϓϩάϥϜ"45&1τϥΠΞτ+1.+5.)
ͷࢧԉΛड͚ͨ
w ࣥචʹ͋ͨͬͯɼ࣍ͷํʹಛʹ༗ӹͳॿݴΛ͍͍ͨͩͨ
w 5SPPEPO4PGUXBSF--$͓Αͼ/FSWFT1SPKFDUͷ'SBOL
)VOMFUIࢯ
w 5PNCP8PSLTදͷҥ྄ଠࢯ
w +BSFNZ$SFFDIMFZࢯ
30
4VTVNV:BNB[BLJ
Slide 31
Slide 31 text
͓·͚
31
4VTVNV:BNB[BLJ
Slide 32
Slide 32 text
"QQMF4JMJDPOࡌ.BDͷൃද
w .BDͷ$16͕*OUFM͔Β"3.ʹҠߦ
w $16ҠߦظͰ͋Δ͜ͱɼࡌϝϞϦྔͷͳͲͰɼҰൠʹ͓קΊͰ͖ͳ͍
w $16(16ີ݁߹ΞʔΩςΫνϟͳͷͰɼ$16ͱ(16ͷؒͷσʔλసૹ͕ۃΊͯߴͩΖ͏ͱ༧ଌ͞ΕΔ
w ը૾ॲཧੑೳ͕ͱͯߴͦ͏ʂ
w Ձ֨͋ͨΓͷը૾ॲཧੑೳ͕+FUTPO"(99BWJFSΑΓߴ͍ͱࢥΘΕΔ
w +FUTPO"(99BWJFSͷՁ֨
ԁ ετϨʔδ(#F..$
w .BDNJOJͷՁ֨
ԁ ετϨʔδ(#/7.F44%૬
w ফඅిྗ͋ͨΓͷը૾ॲཧੑೳͲ͏͔ʁ
w +FUTPO"(99BWJFSͷ࠷େফඅిྗ8I ͦΕΑΓଟ͘ফඅ͢ΔϞʔυ͋Δ
w .BDNJOJͷ࠷େফඅిྗ8I ఆৗ࣌ͷফඅిྗͦΕΑΓ͍ͱࢥΘΕΔ
32
4VTVNV:BNB[BLJ
Slide 33
Slide 33 text
"QQMF4JMJDPOࡌ.BDͷൃද
w Ձ֨͋ͨΓͷը૾ॲཧੑೳ͕+FUTPO"(99BWJFSΑΓߴ͍ͱࢥΘΕΔ
w ফඅిྗ͋ͨΓͷը૾ॲཧੑೳͲ͏͔ʁ
w ݒ೦ը૾ॲཧʹؔ࿈͢Δ"1*ମܥ͕·ΔͰҟͳΔ
w +FUTPO"(99BWJFS$6%"
DV%//
71*
7JTPO8PSLT
w .BDNJOJ.FUBM
$PSF.-
$PSF*NBHF
7JTJPO
w ͪΖΜ0QFO$7ڞ௨ͯ͑͠Δ͕ɼύϑΥʔϚϯεʹ͕͋Δ༷ ཁௐࠪ
w நԽ͢ΔϨΠϠʔΛઃ͚Δඞཁ͕͋Δ͔ͱࢥ͏
w ͋ͨ͞͠Γ&MJYJS͔Β4XJGUͷ"1*Λݺͼग़͢खஈʹ͍ͭͯௐࠪͨ͠
IUUQTRJJUBDPN[BDLZJUFNTDCCFDCE
33
4VTVNV:BNB[BLJ