Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Spreading world by encouragement of cgo
Search
linyows
October 17, 2017
Technology
260
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Spreading world by encouragement of cgo
Oct 17, 2017 @fukuoka.go#9 でお話しした資料です
linyows
October 17, 2017
More Decks by linyows
See All by linyows
GoとClickhouseで作るRAGアプリ / Building RAG Application with Go and Clickhouse
linyows
1
66
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
3
740
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
290
研究開発と実装OSSと プロダクトの好循環 / A virtuous cycle of research and development implementation OSS and products
linyows
1
960
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
500
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
700
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
1
630
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
1.2k
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
690
Other Decks in Technology
See All in Technology
AIは実装を速くする。では、私たちは何を今作るべきか?-立場を越えてリリースに向き合ったチーム開発の実践 / 20260801 Hiromi Nakaya and Naoki Takahashi
shift_evolve
PRO
3
470
猫付きpingコマンドを自作
uyuki234
0
180
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
4.4k
PLATEAU で バーチャル花火大会
tatsuya1970
0
130
関東Kaggler会発表資料
takoi
1
210
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.9k
AIエージェントを前提としたプラットフォーム エンジニアリング:GKEで作るAgent-Ready Golden Path
legalontechnologies
PRO
2
220
モダンフロントエンド 開発研修
recruitengineers
PRO
4
590
システム思考で問題に対処する
yussak
0
230
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
1
490
JavaScript 研修 (2026)
recruitengineers
PRO
2
500
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
Featured
See All Featured
Balancing Empowerment & Direction
lara
6
1.2k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
210
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
For a Future-Friendly Web
brad_frost
183
10k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
440
Writing Fast Ruby
sferik
630
63k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
490
Designing Experiences People Love
moore
143
24k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
950
How to Ace a Technical Interview
jacobian
281
24k
Accessibility Awareness
sabderemane
1
170
Transcript
5PNPIJTB0EB(.01FQBCP *OD 0DU ͻΖ͕Δ(P $(0ͷ͢͢Ί GVLVPLBHP
GVLVPLBHP (.0ϖύϘϓϦϯγύϧΤϯδχΞ খాԝ!MJOZPXT ٕज़෦ٕज़ج൫νʔϜ IUUQUPNPIJTBPEBDPN
GVLVPLBHP ࠷͍ۙͬͯΔ͜ͱ ▸ /VYUKTͱ&YQSFTTͰ443αʔϏε ▸ 5ZQF4DSJQUͰOPEFNPEVMFOQNJOTUBMMHNPQH ▸ /44NPEVMFΞϓϦ0$501"44
GVLVPLBHP MJOVYϢʔβͷ໊લղܾΛHJUIVCͷνʔϜίϥϘϨʔλͰߦ͏
GVLVPLBHP 82 1MFBTFVTFBOEHJWFTUBS IUUQTHJUIVCDPNMJOZPXTPDUPQBTT
GVLVPLBHP લճͷ͓͞Β͍ʢGVLVPLBHP ▸ (PWͰQMVHJOQBDLBHF͕Ճ͞Εͨ ▸ CVJMENPEFQMVHJOʹΑͬͯTPϑΝΠϧΛ࡞ ▸ ຊମ͔Β%ZOBNJDBMMZ-PBEFE ▸ ͜Ε·ͰͷPWFS31$ͷ6/*9EPNBJOTPDLFUͰΔΑΓγϯϓ
ϧͰखܰ
$(0ͬͯ·͔͢ʁ GVLVPLBHP
GVLVPLBHP $(0ͬͯ͜͏͍͏ͷ ▸ (PWҎલ͔Β͋Δ ▸ $ͷίʔυΛΠϯϙʔτͨ͠Γ(PͷίʔυΛ$ʹΤΫεϙʔτͰ͖Δ ▸ CVJMENPEFDTIBSFEͰCVJME͢ΔͱIͱTPΛग़ྗ ▸ ֤ݴޠͷ''*ϥΠϒϥϦ͔Β(Pͷίʔυ͕͑Δ
GVLVPLBHP package main /* #cgo pkg-config: onigmo #include <stdlib.h> #include
<string.h> #include <onigmo.h> */ 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 }
GVLVPLBHP Կ͕خ͍͔͠ ▸ ߴ͍ύϑΥʔϚϯεΛཁ͢Δ෦ΛҠৡͰ͖Δ ▸ ͷߴ͍NJEEMFXBSFΛΈࠐΊΔ ▸ $ͷख़࿅͕ͯ͘ൺֱత҆શͳΞϓϦέʔγϣϯ͕࡞ΕΔ ▸ ྫ͑PQFOTTM
GGNQFH QIQ NSVCZ
GVLVPLBHP ؾΛ͚ͭΔͱ͜Ζ ▸ (PϙΠϯλϝϞϦͷڞ༗ʹϧʔϧ͕͋Δ ▸ ϙΠϯλͷϧʔϧҧΛಈతʹνΣοΫ͍ͯͯ͠Ϋϥογϡ͢Δ ▸ (0%(DHPDIFDL $VJOUQUS ▸
ͪΖΜ$ଆ($͞Εͳ͍͠$GSFF͠ͳ͍ͱϝϞϦϦʔΫ͢Δ ▸ εϨουηʔϑͰͳ͍ͷ͔ͬ͠ΓTZODNVUFY͢Δ ▸ $(0ʹॻ͍ͨ$ผϑΝΠϧ͔Βࢀরग़དྷͳ͍
$ͷϥούʔΛ࡞Δͱ٢ GVLVPLBHP
҆શΛࣺͯڈΕ $ଆͰͳΜͰग़དྷΔ GVLVPLBHP
GVLVPLBHP ͦ͏͍͑ʜ7VF͕ϦϦʔε ▸ NBUUOHPW TPOZWFWBM MB[ZUJHFSHPWʜ ▸ WVFTFSWFSSFOEFSFS͕"MU+BWB4DSJQU3VOUJNFΛαϙʔτ ▸ (Pͷ8FCαʔόͰWόΠϯσ
ΟϯάΛ͑WVFͰ443 Ͱ͖ͦ͏ͩ &$."4DSJQUͷQVSFHP࣮͋Γ·͕͢
GVLVPLBHP ·ͱΊ ▸ ָͯ͠ʁʁ৴པੑߴ͍طଘࢿ࢈ιϑτΣΞ͕͑Δ ▸ $ͷεΩϧ͕ෆཁͰͳ͍ͷͰຊԻΛݴ͏ͱ(PͰ͍݁ͤͨ͞ ▸ ͱ͍͑ɺࣗ༝ͷେ͖͍બ͕Ͱ͖Δͱ͍͏ͷϝϦοτ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ GVLVPLBHP