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
The sbt-rats parser generator plugin for Scala
Search
Tony Sloane
October 30, 2016
Research
0
710
The sbt-rats parser generator plugin for Scala
With Franck Cassez and Scott Buckley. Tool talk at Scala Symposium 2016, Amsterdam.
Tony Sloane
October 30, 2016
Tweet
Share
More Decks by Tony Sloane
See All by Tony Sloane
Embedding Attribute Grammars
inkytonik
0
70
Respect Your Parents: How Attribution and Rewriting Can Get Along
inkytonik
0
73
LLVM and Scala
inkytonik
2
330
The Moama Functional Language Design and Implementation (and quite a bit about the Monto Disintegrated Development Environment)
inkytonik
0
110
Embedded Domain-Specific Languages
inkytonik
0
170
Monto: A Disintegrated Development Environment (WG 2.11 version)
inkytonik
2
94
Monto: A Disintegrated Development Environment
inkytonik
1
220
Respect Your Parents: How Attribution and Rewriting Can Get Along
inkytonik
0
220
Embedding a Rewriting DSL in Scala
inkytonik
0
140
Other Decks in Research
See All in Research
非ガウス性と非線形性に基づく統計的因果探索
sshimizu2006
0
440
2024/10/30 産総研AIセミナー発表資料
keisuke198619
1
380
外積やロドリゲスの回転公式を利用した点群の回転
kentaitakura
1
720
Zipf 白色化:タイプとトークンの区別がもたらす良質な埋め込み空間と損失関数
eumesy
PRO
8
1k
The Fellowship of Trust in AI
tomzimmermann
0
150
Large Vision Language Model (LVLM) に関する最新知見まとめ (Part 1)
onely7
21
4.8k
20241115都市交通決起集会 趣旨説明・熊本事例紹介
trafficbrain
0
700
Weekly AI Agents News! 11月号 論文のアーカイブ
masatoto
0
180
研究の進め方 ランダムネスとの付き合い方について
joisino
PRO
56
20k
打率7割を実現する、プロダクトディスカバリーの7つの極意(pmconf2024)
geshi0820
0
130
CoRL2024サーベイ
rpc
1
1.1k
ソフトウェア研究における脅威モデリング
laysakura
0
930
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
A Philosophy of Restraint
colly
203
16k
Building Applications with DynamoDB
mza
91
6.1k
Speed Design
sergeychernyshev
25
670
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
The Pragmatic Product Professional
lauravandoore
32
6.3k
Typedesign – Prime Four
hannesfritz
40
2.4k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
Transcript
THE SBT-RATS PARSER GENERATOR PLUGIN FOR SCALA Anthony Sloane Franck
Cassez Scott Buckley Programming Languages and Verification Group Macquarie University, Sydney, Australia
DEMO
RATS! http://cs.nyu.edu/rgrimm/xtc/rats-intro.html Robert Grimm Parsing expression grammars Packrat parsing Generates
Java
MORE RATS!
SYNTAX DEFINITIONS
SYNTAX DEFINITIONS
TREE DEFINITION
PRETTY-PRINTING
BINARY PARSING
EXPRESSIONS
SCALA LLVM LIBRARY
MQ SCALA SMTLIB Replaces a hand-written lexer, parser, pretty-printer of
more than 2,500 Scala code lines with less than 500 lines of syntax definition
SOFTWARE LANGUAGE ENGINEERING AT MACQUARIE UNIVERSITY https://bitbucket.org/inkytonik/sbt-rats https://bitbucket.org/inkytonik/kiama
[email protected]
@inkytonik
on Twitter High-level language processing in a familiar programming setting strategic term rewriting dynamically-scheduled attribute grammars abstract state machines pretty-printing combinators