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
41
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
18
state_of_functional_programming.pdf
leifg
0
34
Bugs - What are they good for
leifg
0
17
Building Event Sourced Apps
leifg
1
750
Unicode Spaß
leifg
0
34
Event Sourcing - The Story Telling of Processes
leifg
1
56
Elixir Releases
leifg
0
130
Introduction to Rails
leifg
0
44
JRuby - The enterprise view
leifg
1
90
Other Decks in Technology
See All in Technology
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
0
13k
Oracle Autonomous Database:サービス概要のご紹介
oracle4engineer
PRO
1
7k
LLVM/ASMを使った有限体の高速実装
herumi
0
120
PDF Viewer作成の今までとこれから
hunachi
0
270
サーバレスでモバイルアプリ開発! NTTコム「ビジネスdアプリ」のアーキテクチャ / The architecture of business d app
nttcom
12
220
不動産売買取引におけるAIの可能性とプロダクトでのAI活用
zabio3
0
210
Road to Single Activity
yurihondo
1
190
Eventual Detection Engineering
ken5scal
0
1.3k
App Router を実プロダクトで採用して見えてきた勘所をちょっとだけ紹介
marokanatani
1
850
スタッフエンジニアの道: The Staff Engineer’s Path
snoozer05
PRO
38
13k
ロボットアームを遠隔制御の話 & LLMをつかったIoTの話もしたい
soracom
PRO
1
270
OCI で始める!! Red Hat OpenShift / Get Started OpenShift on OCI
oracle4engineer
PRO
1
120
Featured
See All Featured
Atom: Resistance is Futile
akmur
261
25k
Build The Right Thing And Hit Your Dates
maggiecrowley
30
2.3k
Unsuck your backbone
ammeep
667
57k
Code Review Best Practice
trishagee
62
16k
Typedesign – Prime Four
hannesfritz
39
2.3k
Designing with Data
zakiwarfel
98
5k
Building a Modern Day E-commerce SEO Strategy
aleyda
35
6.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
45
4.8k
Infographics Made Easy
chrislema
239
18k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
326
21k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
363
22k
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