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
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
YAPC::Japan::Online 2022で発表して WEB+DB PRESSに記事を寄稿した話
makenowjust
0
27
Regular Expressions, REXML, Automata Learning
makenowjust
0
320
オートマトン学習しろ / Do automata learning
makenowjust
3
240
#kaigieffect LT 2024 - rexml-css_selector: A REXML extension for supporting CSS selector
makenowjust
1
360
RubyKaigi 2024 - Make Your Own Regex Engine!
makenowjust
1
1.6k
正規表現改善報告する回 / Regexp memoization progress report
makenowjust
2
590
Make Regexp#match much faster
makenowjust
1
2.7k
ReDoS 検出の最先端 recheck の紹介 / State of the Art of ReDoS Detection
makenowjust
9
3.6k
ReDoS 検出プログラム recheck の開発 / recheck: ReDoS check program
makenowjust
0
160
Other Decks in Programming
See All in Programming
アプリを起動せずにアプリを開発して品質と生産性を上げる
ishkawa
0
280
体得しよう!RSA暗号の原理と解読
laysakura
3
530
신입 안드로이드 개발자의 AI 스타트업 생존기 (+ Native C++ Code를 Android에서 사용해보기)
dygames
0
500
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
6
3k
Coding Experience Cpp vs Csharp - meetup app osaka@9
harukasao
0
110
20250326_生成AIによる_レビュー承認システムの実現.pdf
takahiromatsui
17
5.5k
Kubernetesで実現できるPlatform Engineering の現在地
nwiizo
2
1.7k
データベースエンジニアの仕事を楽にする。PgAssistantの紹介
nnaka2992
9
4.2k
eBPF Updates (March 2025)
kentatada
0
130
家族・子育て重視/沖縄在住を維持しながらエンジニアとしてのキャリアをどのように育てていくか?
ug
0
240
新卒から4年間、20年もののWebサービスと 向き合って学んだソフトウェア考古学
oguri
7
6.7k
CQRS+ES勉強会#1
rechellatek
0
400
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Writing Fast Ruby
sferik
628
61k
Done Done
chrislema
183
16k
Agile that works and the tools we love
rasmusluckow
328
21k
Designing for humans not robots
tammielis
250
25k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.4k
The World Runs on Bad Software
bkeepers
PRO
67
11k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
A Philosophy of Restraint
colly
203
16k
Faster Mobile Websites
deanohume
306
31k
Become a Pro
speakerdeck
PRO
27
5.2k
Testing 201, or: Great Expectations
jmmastey
42
7.4k
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ͷϚΫϩ νϡʔϦϯάશ ͏গ͠ػೳΛʝ
ʹεϥΠυͷ༰Λ Ͱ্ͬͪ͛Δͷͱ͔ແཧ
͝ΊΜͳ͍͞ʝ