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
.NETの上でお手製の言語を動かす技術
Search
taiseiue
April 06, 2025
Technology
110
0
Share
.NETの上でお手製の言語を動かす技術
Kyoto.cs#1で発表した資料です。
https://kyotocs.connpass.com/event/348616/
taiseiue
April 06, 2025
More Decks by taiseiue
See All by taiseiue
RustでもVJしたい!
taiseiue
0
56
“⾞が通れるほど⼤きな”セキュリティーホールを抑えながらログインしたい
taiseiue
0
400
Kotlinのデフォルト引数の話
taiseiue
0
94
AIの力でお手軽Chrome拡張機能作り
taiseiue
0
440
振り向き美人
taiseiue
0
35
Tadpole operators
taiseiue
0
76
(自作の)プログラミング言語ができるまで
taiseiue
1
630
Other Decks in Technology
See All in Technology
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.5k
製造業のクラウド活用最適解〜AI,DXを加速するデータ基盤の作り方〜
hamadakoji
0
350
Dario Amodi『Policy on the AI Exponential』を理解する
nagatsu
0
110
ブロックチェーン / Blockchain
ks91
PRO
0
100
GoとSIMDとWasmの今。
askua
3
490
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development with AI-DLC
yoshidashingo
0
130
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
210
Terraformモジュールは、なぜ「魔境」化するのか
hayama17
1
180
先取りMaven4 ~16年ぶりのメジャーアップデート、その進化とは?~
ogiwarat
0
140
Claude code Orchestra
ozakiomumkj
3
940
Building applications in the Gemini API family.
line_developers_tw
PRO
0
710
MIERUNE JCT 発表資料「宇宙から伊能忠敬ごっこ」
syuchimu
0
170
Featured
See All Featured
The Curious Case for Waylosing
cassininazir
1
370
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Rails Girls Zürich Keynote
gr2m
96
14k
The Cult of Friendly URLs
andyhume
79
6.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
The browser strikes back
jonoalderson
0
1.1k
Google's AI Overviews - The New Search
badams
0
1k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
44k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
550
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
Transcript
.NETの上で お手製の言語を動かす技術 Kyoto.cs#1 2025/4/6 京都産業大学 上村太成
自己紹介 •taiseiue • X @taiseiue • id:taiseiue • taiseiue.jp •
C#/TypeScript/Perl •
None
None
None
C#の話をします
None
None
None
AliceScriptの実装: Losetta
None
None
じゃあ AliceScriptの外の関数は?
None
None
None
こういう関数を考える
None
しんどい
None
こういうのにしたい
None
いるもの •Variable型から指定した型への変換 •.NETのメソッドをFunctionBaseにする
Variableか.NETの型への変換
None
いるもの • Variable型から指定した型への変換 •.NETのメソッドをFunctionBaseにする
None
BindFunctionには対応する .NET のメソッドの MethodInfoを持たせておく
BindFunctionには対応する .NET のメソッドの MethodInfoを持たせておく
遅い!
MethodInfo.Invokeの欠点 •遅い • リフレクション • 呼び出し毎に遅延バインディングが起きる
リフレクション
動的コード生成
None
None
None
None
Native C Functionは?
None
まとめ • リフレクションでメソッドを呼ぶときには • デリゲートにキャッシュしよう
None
乞う! コントリビューター!
完