Slide 1

Slide 1 text

5PNPIJTB0EB(.01FQBCP *OD 0DU ͻΖ͕Δ(P $(0ͷ͢͢Ί GVLVPLBHP

Slide 2

Slide 2 text

GVLVPLBHP (.0ϖύϘϓϦϯγύϧΤϯδχΞ খా஌ԝ!MJOZPXT ٕज़෦ٕज़ج൫νʔϜ IUUQUPNPIJTBPEBDPN

Slide 3

Slide 3 text

GVLVPLBHP ࠷ۙ΍͍ͬͯΔ͜ͱ ▸ /VYUKTͱ&YQSFTTͰ443αʔϏε ▸ 5ZQF4DSJQUͰOPEFNPEVMF὎OQNJOTUBMMHNPQH ▸ /44NPEVMFΞϓϦ0$501"44

Slide 4

Slide 4 text

GVLVPLBHP MJOVYϢʔβͷ໊લղܾΛHJUIVCͷνʔϜ΍ίϥϘϨʔλͰߦ͏

Slide 5

Slide 5 text

GVLVPLBHP 82 1MFBTFVTFBOEHJWFTUBS IUUQTHJUIVCDPNMJOZPXTPDUPQBTT

Slide 6

Slide 6 text

GVLVPLBHP લճͷ͓͞Β͍ʢGVLVPLBHP ▸ (PWͰQMVHJOQBDLBHF͕௥Ճ͞Εͨ ▸ CVJMENPEFQMVHJOʹΑͬͯTPϑΝΠϧΛ࡞੒ ▸ ຊମ͔Β%ZOBNJDBMMZ-PBEFE ▸ ͜Ε·ͰͷPWFS31$ͷ6/*9EPNBJOTPDLFUͰ΍ΔΑΓγϯϓ ϧͰखܰ

Slide 7

Slide 7 text

$(0࢖ͬͯ·͔͢ʁ GVLVPLBHP

Slide 8

Slide 8 text

GVLVPLBHP $(0ͬͯ͜͏͍͏ͷ ▸ (PWҎલ͔Β͋Δ ▸ $ͷίʔυΛΠϯϙʔτͨ͠Γ(PͷίʔυΛ$ʹΤΫεϙʔτͰ͖Δ ▸ CVJMENPEFDTIBSFEͰCVJME͢ΔͱIͱTPΛग़ྗ ▸ ֤ݴޠͷ''*ϥΠϒϥϦ͔Β(Pͷίʔυ͕࢖͑Δ

Slide 9

Slide 9 text

GVLVPLBHP package main /* #cgo pkg-config: onigmo #include #include #include */ import "C" import "fmt" fun main() { fmt.Println(Version()) // Output: 6.1.3 } func Version() string { return C.GoString(C.onig_version()) } package main // typedef int (*intFunc) (); // // int bridge_int_func(intFunc f) { // return f(); // } // // int fortytwo() { // return 42; // } import "C" import "fmt" func main() { f := C.intFunc(C.fortytwo) fmt.Println(int(C.bridge_int_func(f))) // Output: 42 }

Slide 10

Slide 10 text

GVLVPLBHP Կ͕خ͍͔͠ ▸ ߴ͍ύϑΥʔϚϯεΛཁ͢Δ෦෼ΛҠৡͰ͖Δ ▸ ׬੒౓ͷߴ͍NJEEMFXBSFΛ૊ΈࠐΊΔ ▸ $ͷख़࿅౓͕௿ͯ͘΋ൺֱత҆શͳΞϓϦέʔγϣϯ͕࡞ΕΔ ▸ ྫ͑͹PQFOTTM GGNQFH QIQ NSVCZ

Slide 11

Slide 11 text

GVLVPLBHP ؾΛ͚ͭΔͱ͜Ζ ▸ (PϙΠϯλ΍ϝϞϦͷڞ༗ʹϧʔϧ͕͋Δ ▸ ϙΠϯλͷϧʔϧҧ൓ΛಈతʹνΣοΫ͍ͯͯ͠Ϋϥογϡ͢Δ ▸ (0%(DHPDIFDL $VJOUQUS ▸ ΋ͪΖΜ$ଆ͸($͞Εͳ͍͠$GSFF͠ͳ͍ͱϝϞϦϦʔΫ͢Δ ▸ εϨουηʔϑͰͳ͍΋ͷ͸͔ͬ͠ΓTZODNVUFY͢Δ ▸ $(0ʹॻ͍ͨ$͸ผϑΝΠϧ͔Βࢀরग़དྷͳ͍

Slide 12

Slide 12 text

$ͷϥούʔΛ࡞Δͱ٢ GVLVPLBHP

Slide 13

Slide 13 text

҆શΛࣺͯڈΕ͹ $ଆͰͳΜͰ΋ग़དྷΔ GVLVPLBHP

Slide 14

Slide 14 text

GVLVPLBHP ͦ͏͍͑͹ʜ7VF͕ϦϦʔε ▸ NBUUOHPW TPOZWFWBM MB[ZUJHFSHPWʜ ▸ WVFTFSWFSSFOEFSFS͕"MU+BWB4DSJQU3VOUJNFΛαϙʔτ ▸ (Pͷ8FCαʔόͰ΋WόΠϯσ ΟϯάΛ࢖͑͹WVFͰ443 Ͱ͖ͦ͏ͩ &$."4DSJQUͷQVSFHP࣮૷΋͋Γ·͕͢

Slide 15

Slide 15 text

GVLVPLBHP ·ͱΊ ▸ ָͯ͠ʁʁ৴པੑߴ͍طଘࢿ࢈ιϑτ΢ΣΞ͕࢖͑Δ ▸ $ͷεΩϧ͕ෆཁͰ͸ͳ͍ͷͰຊԻΛݴ͏ͱ(PͰ׬͍݁ͤͨ͞ ▸ ͱ͸͍͑ɺࣗ༝౓ͷେ͖͍બ୒͕Ͱ͖Δͱ͍͏ͷ͸ϝϦοτ

Slide 16

Slide 16 text

͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ GVLVPLBHP