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 interpr...
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
580
VTuber の LOD をみんなで作るための取り組み / Initiatives for an environment where anyone can contribute to vlueprint
saitoeku3
3
550
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
420
Other Decks in Programming
See All in Programming
cmp.Or に感動した
otakakot
3
200
Remix on Hono on Cloudflare Workers
yusukebe
1
300
Contemporary Test Cases
maaretp
0
140
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
150
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
10
1.3k
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.2k
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
1.1k
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
170
광고 소재 심사 과정에 AI를 도입하여 광고 서비스 생산성 향상시키기
kakao
PRO
0
170
CSC509 Lecture 09
javiergs
PRO
0
140
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
31
6.3k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Fireside Chat
paigeccino
34
3k
Automating Front-end Workflow
addyosmani
1366
200k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Six Lessons from altMBA
skipperchong
27
3.5k
GitHub's CSS Performance
jonrohan
1030
460k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
How to Ace a Technical Interview
jacobian
276
23k
Optimizing for Happiness
mojombo
376
70k
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 Τϯδϯ͕͍ͬͯΔͧ - Կ͔ਏ͍͜ͱ͕͋ͬͯؤுΕΔؾʹͳΕΔ͔ʁ