$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
C Compiler in Crystal on Compile Time
Search
TSUYUSATO Kitsune
November 30, 2016
Programming
0
1.2k
C Compiler in Crystal on Compile Time
2016/11/29の東京 Crystal 勉強会 #4で発表したものです。
TSUYUSATO Kitsune
November 30, 2016
Tweet
Share
More Decks by TSUYUSATO Kitsune
See All by TSUYUSATO Kitsune
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
1.2k
最近の研究とか、RubyへのContributionとか / Recent My Study and Ruby Contributions
makenowjust
2
250
Make Parsers Compatible Using Automata Learning
makenowjust
3
12k
YAPC::Japan::Online 2022で発表して WEB+DB PRESSに記事を寄稿した話
makenowjust
0
48
Regular Expressions, REXML, Automata Learning
makenowjust
0
410
オートマトン学習しろ / Do automata learning
makenowjust
3
490
#kaigieffect LT 2024 - rexml-css_selector: A REXML extension for supporting CSS selector
makenowjust
1
420
RubyKaigi 2024 - Make Your Own Regex Engine!
makenowjust
1
2k
正規表現改善報告する回 / Regexp memoization progress report
makenowjust
2
660
Other Decks in Programming
See All in Programming
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
6
2.1k
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
240
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
370
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
140
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
200
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
260
生成AIを利用するだけでなく、投資できる組織へ
pospome
1
250
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
5
2k
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
150
React Native New Architecture 移行実践報告
taminif
1
150
sbt 2
xuwei_k
0
260
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
600
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Invisible Side of Design
smashingmag
302
51k
Designing for humans not robots
tammielis
254
26k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Fireside Chat
paigeccino
41
3.7k
Building Flexible Design Systems
yeseniaperezcruz
330
39k
Writing Fast Ruby
sferik
630
62k
Visualization
eitanlees
150
16k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Optimizing for Happiness
mojombo
379
70k
Transcript
$$PNQJMFSJO$SZTUBM PO$PNQJMF5JNF 546:64"50l.BLF/PX+VTUz,JUTVOF
8IP"SF:PV w !NBLF@OPX@KVTU 5XJUUFS !.BLF/PX+VTU (JU)VC w ࿐ཬ͖ͭͶʢBLB͖ͬ͞࡞ͬͨʣ
w จܥେֶੜ w $SZTUBMʹίϯτϦϏϡʔτ͢Δਓ
࠷ۙͬͨ͜ͱ
ݴޠΛ͍͍Ճݮʹհ IUUQRJJUBDPNNBLF@OPX@KVTUJUFNTCBCGDE
CBTIͰNFNDBDIFEΛ࣮ IUUQRJJUBDPNNBLF@OPX@KVTUJUFNTGBBCBBDEC
ຊฤ
$$PNQJMFSJO$SZTUBM PO$PNQJMF5JNF
$SZTUBMͰॻ͔Εͨ ίϯύΠϧ࣌ʹಈ͘ $ίϯύΠϥ
SIZTEDDWJN IUUQTHJUIVCDPNSIZTEDDWJN
LXVEPODPOTUFYQSDD IUUQTHJUIVCDPNLXVEPODPOTUFYQSDD
ੈେ$ίϯύΠϥ࣮࣌
ͳͥʁ
&-7. IUUQTHJUIVCDPNTIJOIFMWN
&-7. w &TP-BOH7.$PNQJMFS*OGSBTUSVDUVSF w TIJOIࢯ࡞ w #SBJOG DLΈ͍ͨͳݴޠͰ࣮ߦՄೳͳ͘Β͍ γϯϓϧͳ7. w
ͦͷ্Ͱಈ͘$ίϯύΠϥఏڙ͞Ε͍ͯΔ w 7.ͷίʔυˠϓϩάϥϜͷมثΛ࡞Εɺ ͦͷݴޠͰ$ίϯύΠϥ͕ಈ͘Α͏ʹͳΔ
ࠓճɺ &-7.ˠ$SZTUBMͷϚΫϩ ͷมΛ࣮
$SZTUBMͷϚΫϩ w $SZTUBMͷۄػೳͷҰͭ w ίϯύΠϧ࣌ʹ࣮ߦ͞ΕΔ
ίϯύΠϧ࣌ʹίϚϯυΛ࣮ߦͯ͠ ݁ՌΛຒΊࠐΉ IUUQTHJUIVCDPNDSZTUBMMBOHDSZTUBMCMPC CBGEDDFGDEEFBTSDDPNQJMFSDSZTUBMDPOpHDS-
ςϯϓϨʔτΛύʔεͯ͠ ϓϩάϥϜʹຒΊࠐΉ w &$3ʢ$SZTUBMʹඪ४Ͱ͍͍ͭͯΔςϯϓϨʔτΤϯδϯʣ w ίϯύΠϧ࣌ʹςϯϓϨʔτ͕ύʔε͞Ε ϓϩάϥϜʹม͞ΕͯɺͦΕ͕ຒΊࠐ·ΕΔ w ͳͷͰͱͯૣ͍ w
ϚΫϩͱ͍͏͔ɺ෦ͰϚΫϩͷػೳΛͬͯ ςϯϓϨʔτΛύʔε͢Δ$SZTUBMͷϓϩάϥϜΛىಈ͍ͯ͠Δ
৭ʑͰ͖Δʁ
$SZTUBMͷϚΫϩͷ੍ w $SZTUBMͷϚΫϩͰ͑Δͷ$SZTUBMͷαϒηοτ w ͑Δϝιουʹ੍ݶ w ΦϒδΣΫτͷมߋ͕͋·ΓͰ͖ͳ͍ ʢྫ"SSBZQVTIɺ)BTI<>ͷΈʣ w XIJMFVOUJMͳͲͷϧʔϓ͑ͳ͍
ʢCSFBLOFYU͑ͳ͍ʣ w MPPQϝιου͑ͳ͍ˠແݶϧʔϓ͕Ͱ͖ͳ͍ʁ
ແݶϧʔϓ͕͑ͳ͍ʁ
GPSJO QVTI 1 {% begin %} 2 {% array =
[0] %} 3 {% i = 0 %} 4 {% for x in array %} 5 {% if i < 10 %} 6 {% array.push 0 %} # ͜͜ͰarrayͷதΛՃ 7 {% p i %} 8 {% i = i + 1 %} # ͳ͔ͥ += ͕͑ͳ͍… 9 {% end %} 10 {% end %} 11 {% end %}
ͦͷଞɺͭΒ͔ͬͨͱ͜Ζ w ॳɺ࠶ؼͰϧʔϓΛ࣮͠Α͏ͱͨ͠ ˠελοΫΦʔόʔϑϩʔ͢Δɺແཧ w ೖྗɺग़ྗʹ͍ͭͯଥڠ w ೖྗࣗࣗʹίϯύΠϧ࣌ϑϥάΛ͚ͯ TZTUFNϝιουͰىಈ͠ಡΈग़͢ w
ग़ྗ࣮ߦ࣌ʹ͢Δ
ڪΖ͘͠େ͖͍ MMIPVUDDDFJSDS SXYSYSYNBLFOPXKVTUTUB⒎.PVUDDDFJSDS
ڪΖ͍͘͠ ͔͚ͯQVUDIBS͢Δ͚ͩͷ$ͷίʔυͷ ίϯύΠϧ͕ऴΘΒͳ͍ఔ
·ͱΊ
$SZTUBMͷϚΫϩ ΕͰ͖Δࢠ ͔ͩΒ͏গ͠ػೳ૿ͯ͠΄͍͠ʝ
$SZTUBMͷϚΫϩ νϡʔϦϯάશ ͏গ͠ػೳΛʝ
ʹεϥΠυͷ༰Λ Ͱ্ͬͪ͛Δͷͱ͔ແཧ
͝ΊΜͳ͍͞ʝ