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
Parsers in JavaScript
Search
Leif Gensert
April 22, 2020
Technology
0
44
Parsers in JavaScript
This is an introduction to parsers in JavaScript with examples of PEG.js
Leif Gensert
April 22, 2020
Tweet
Share
More Decks by Leif Gensert
See All by Leif Gensert
Sorbet - Is it really that tasty?
leifg
0
36
state_of_functional_programming.pdf
leifg
0
40
Bugs - What are they good for
leifg
0
21
Building Event Sourced Apps
leifg
1
810
Unicode Spaß
leifg
0
39
Event Sourcing - The Story Telling of Processes
leifg
1
65
Elixir Releases
leifg
0
140
Introduction to Rails
leifg
0
49
JRuby - The enterprise view
leifg
1
99
Other Decks in Technology
See All in Technology
Jamf Connect ZTNAとMDMで実現! 金融ベンチャーにおける「デバイストラスト」実例と軌跡 / Kyash Device Trust
rela1470
1
200
リリース2ヶ月で収益化した話
kent_code3
1
260
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 1
ks91
PRO
0
140
ファッションコーディネートアプリ「WEAR」における、Vertex AI Vector Searchを利用したレコメンド機能の開発・運用で得られたノウハウの紹介
zozotech
PRO
0
290
猫でもわかるQ_CLI(CDK開発編)+ちょっとだけKiro
kentapapa
0
3.5k
Lambda management with ecspresso and Terraform
ijin
2
160
生成AI時代におけるAI・機械学習技術を用いたプロダクト開発の深化と進化 #BetAIDay
layerx
PRO
1
1.2k
はじめての転職講座/The Guide of First Career Change
kwappa
1
960
React Server ComponentsでAPI不要の開発体験
polidog
PRO
0
240
Serverless Meetup #21
yoshidashingo
1
120
Amazon Q Developerを活用したアーキテクチャのリファクタリング
k1nakayama
2
210
AI時代の経営、Bet AI Vision #BetAIDay
layerx
PRO
1
2k
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
77
9.5k
Balancing Empowerment & Direction
lara
1
540
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Done Done
chrislema
185
16k
Faster Mobile Websites
deanohume
308
31k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Automating Front-end Workflow
addyosmani
1370
200k
Transcript
Hello World Parsers with JavaScript
None
Programming === Hiking
Compilers Reverse Engineering Building Developer Tools
You don't Say
Every single program can be reduced to Input Transformation Output
* Former Boss
None
Human Readable Parsing Machine Readable Grammar
None
"in 11 seconds" 11 "11 seconds ago" -11 "in 5
minutes" 300 "in 1 minute and 30 seconds ago" 90 "now" 0
Leif Demo
// 1 + 2 add(1,2) // 1 + (5 -
3) add(1, subtract(5,3)) // 1 + 5 * 3 add(1, multiply(5,3)) // (1 + 5) * 3 multiply(add(1,5), 3)
Leif Demo
What else? Domain Specific NLP Config Files (Re)Implement Programming Languages
Abstract Syntax Tree add(1, multiply(5,3)) { type: "callExpression", name: "add",
arguments: [1 { type: "callExpression", name: "add", arguments: [5, 3] }] }
Why?
Focus!
None
Leif Demo
- Parsers seem intimidating - Helps you understand Recursion -
Try out formulon.io
Shopping List
Back
Back