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
なぜ人類はインタプリタを自作するのか / Why do we create a interpreter
Search
Tadao Iseki
September 07, 2019
Programming
1
190
なぜ人類はインタプリタを自作するのか / Why do we create a interpreter
Tadao Iseki
September 07, 2019
Tweet
Share
More Decks by Tadao Iseki
See All by Tadao Iseki
CLIP STUDIO のファイルを解析して JavaScript から読めるライブラリを作った / I made a JavaScript library to read .clip file
saitoeku3
0
480
VTuber の LOD をみんなで作るための取り組み / Initiatives for an environment where anyone can contribute to vlueprint
saitoeku3
3
510
GatsbyJS と Contentful を用いた静的 Web サイト運用のすゝめ / Introduction of static web site operation with GatsbyJS and Contentful
saitoeku3
1
1.1k
Ducksで始める!辛くないReact Redux生活 / Let's start non-painful React Redux Life with Ducks!
saitoeku3
0
390
Other Decks in Programming
See All in Programming
Goのmultiple errorsについて (2024年4月版)
syumai
4
1.3k
Elm Form Validation
bkuhlmann
0
520
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
200
Amazon SQSコンシューマー疎結合への旅 - 出張! #DevelopersIO IT技術ブログの中の人が語る勉強会 #3
quiver
0
350
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
1.1k
Three ways to use AI on Android: The Good, the Bad and the Ugly
marxallski
0
110
MicrosoftのPlatform Engineeringガイドを読んで実際になにかやってみた
ymd65536
1
530
Milestoner
bkuhlmann
1
420
Hanami and htmx
bkuhlmann
0
230
Code Reviews
bkuhlmann
4
910
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
4
550
Criando a Woovi em uma semana
daniloab
0
100
Featured
See All Featured
Web Components: a chance to create the future
zenorocha
306
41k
A better future with KSS
kneath
231
16k
Code Reviewing Like a Champion
maltzj
515
39k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
323
20k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
47k
Imperfection Machines: The Place of Print at Facebook
scottboms
261
12k
Into the Great Unknown - MozCon
thekraken
15
1k
Debugging Ruby Performance
tmm1
70
11k
Optimising Largest Contentful Paint
csswizardry
13
2.4k
Docker and Python
trallard
35
2.7k
Transcript
ͳͥਓྨΠϯλϓϦλΛ ࣗ࡞͢Δͷ͔ 2019/09/07 (Sat.) ՆͩΘͬ͠ΐ͍ʂ2019ʙࣗ༝ݚڀLTʙ @saitoeku3
Who? Tadao Iseki (@saitoeku3) Kanazawa Institute of Technology B3 Web
Frontend and Backend Engineer TypeScript, React, Vue.js, Node.js, Rails
ಥવͰ͕͢…
͋ͳͨ ίϯύΠϥ / ΠϯλϓϦλ Λ ࣗ࡞ͨ͜͠ͱ͕͋Γ·͔͢ʁ ʢۙ͘͠ʹࣗ࡞ͨ͠ਓ͕͍·͔͢ʁʣ
Ҏલͷʮૉఢͳ͜ͱͯ͠Γ·͢ͳ͊ ʢ͓ؾ͕࣋ͪཧղͰ͖ͳ͍ͷ͕ͩ…ʁʣʯ ࠷ۙͷʮ͌͞ͱΔʔʯ
ଞͷਓྨ͕ίϯύΠϥ / τϥϯεύΠϥ Λ ࣗ࡞͍ͯ͠Δؾ͕࣋ͪগ͠Θ͔͖ͬͯͨ
ࠓ͢͜ͱ - ίϯύΠϥ / ΠϯλϓϦλ ͱʢ֬ೝʣ - Computer Science ͳΜΘ͔ΒΜয૩ײ
- Rust ͱͷग़ձ͍ - ࠓઓ͍ͯ͠Δ͜ͱ
·ͩॳ৺ऀͳͷͰؒҧͬͨ͜ͱΛݴ͍ͬͯͨΒ ༏͘͠ࢦఠ͍ͯͩ͘͠͞
ίϯύΠϥ / ΠϯλϓϦλ ͱʁ
ίϯύΠϥ ΠϯλϓϦλ ϓϩάϥϜΛղऍͯ͠ɺػցޠݩΑΓ͍ਫ४ͷίʔυʹม͢Δͷ ࠾༻͍ͯ͠Δݴޠ: C ݴޠɺJavaɺGo ݴޠɺetc… ϓϩάϥϜΛղऍͯ͠ɺʢதؒදݱʹมޙʹʣ࣮ߦ͢Δͷ ࠾༻͍ͯ͠Δݴޠ: RubyɺPHPɺPythonɺetc…
ίϯύΠϥ ΠϯλϓϦλ ϓϩάϥϜΛղऍͯ͠ɺػցޠݩΑΓ͍ਫ४ͷίʔυʹม͢Δͷ ࠾༻͍ͯ͠Δݴޠ: C ݴޠɺJavaɺGo ݴޠɺetc… ϓϩάϥϜΛղऍͯ͠ɺʢதؒදݱʹมޙʹʣ࣮ߦ͢Δͷ ࠾༻͍ͯ͠Δݴޠ: RubyɺPHPɺPythonɺetc…
ࠓճͬͪ͜ʂ
Computer Science ͳΜΘ͔ΒΜয૩ײ
ͳΜΘ͔ΒΜʢϚδʣ ΦϖϨʔςΟϯά γεςϜ ΞϧΰϦζϜ νϡʔϦϯάϚγϯ σʔλߏ ҉߸ཧ
ਫ਼Ұഋͷݴ͍༁ CS ͠ͳֶ͍Պ ͔ͩΒ… ಄ྑ͍ਓʹ ·͔ͤΑ͏ ෳࡶͳ෦ FW ͕ͬͯ͘ΕΔ ߴϨΠϠʔ͑͞
Ͱ͖Εྑ͍ Ϩݏʔʂ͆
ιϑτΣΞΤϯδχΞͱͯ͠ ੜ͖͍ͯ͘ͳΒආ͚ΒΕͳ͍ʁ
ͰԿ͔Β࢝ΊΕྑ͍͔Θ͔Βͳ͍͠ɺ ͦͦ C ݴޠۤखҙ͕ࣝ͋ͬͯ৮Γͨ͘ͳ͍…
Rust ͱͷग़ձ͍
Rust ͱ Firefox Ͱ༗໊ͳ Mozilla ͕։ൃΛࢧԉ͍ͯ͠Δϓϩάϥϛϯάݴޠ C ݴޠ C++ ʹΘΔݴޠΛࢦ͍ͯ͠Δ
࠷ۙ Microsoft ͕ਪ͍ͯ͠Δ ಛ - Garbage Collection Λ༻͠ͳ͍ΘΓʹݫີͳϝϞϦཧ͕ٻΊΒΕΔ - WebAssembly ͱͯ͠ Web ϒϥβ্Ͱ࣮ߦͰ͖Δ - ࣗಈิɺϑΥʔϚολɺܕݕࠪͳͲαϙʔτ͕ॆ࣮ - ݫີͳ੩తܕ͚
͢͜ϙΠϯτ - VSCode Ͱॻ͍ͯΈΔͱΨϯΨϯิ͕ޮ͍ͯ DX ͕ྑ͍ - λϓϧߏମͰ JavaScript ͷΑ͏ͳॻ͖ํ͕Ͱ͖Δ
- ؔ࿈πʔϧʢrustcɺrustupɺCargoʣΛެ͕ࣜఏڙ - †໊લ͕Χοί͍͍† - νϡʔτϦΞϧ͕ແྉͰެ։͞Ε͍ͯΔ - σϑΥϧτͰ immutable
ͬͱֶͼ͍ͨʂॻ͖͍ͨʂ ͰԿΛ࡞Εྑ͍ͷ͔ͳ…ʁ
ࠓઓ͍ͯ͠Δ͜ͱ
JavaScript Engine Written in Rust Λ࡞ΔͨΊͷ͓ษڧ
JavaScript Engine Written in Rust Λ࡞ΔͨΊͷ͓ษڧ
۩ମతʹ… - Go ݴޠͰͭ͘ΔΠϯλϓϦλ / O'REILLY Λߪೖ - Monkey ݴޠͷΠϯλϓϦλΛ
Go ݴޠͰ࣮ - ࣈ۟ղੳͷ࣮·ͰऴΘͬͨʢୈҰষʣ - ࠓޙ Rust Ͱॻ͖͢
·ͱΊ
·ͱΊ ίϯύΠϥ / ΠϯλϓϦλ ιϑτΣΞ։ൃʹ͘ܨ͕͍ͬͯΔ - ݴޠΛਂ͘ཧղͰ͖ΔΑ͏ʹͳΔ - ͍ͭͷؒʹ͔ओઓͷϑϩϯτΤϯυʹ -
Node.js ͳͲ OSS ʹ Contribution ͢ΔͨΊͷ͕ࣝʹͭ͘ ྼײʹଧͪউͭͱࣗ৴ʹͳΔ - ՈʹؼΔͱ Rust ͷ JavaScript Τϯδϯ͕͍ͬͯΔͧ - Կ͔ਏ͍͜ͱ͕͋ͬͯؤுΕΔؾʹͳΕΔ͔ʁ