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
750
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
75
Respect Your Parents: How Attribution and Rewriting Can Get Along
inkytonik
0
100
LLVM and Scala
inkytonik
2
340
The Moama Functional Language Design and Implementation (and quite a bit about the Monto Disintegrated Development Environment)
inkytonik
0
120
Embedded Domain-Specific Languages
inkytonik
0
190
Monto: A Disintegrated Development Environment (WG 2.11 version)
inkytonik
2
120
Monto: A Disintegrated Development Environment
inkytonik
1
240
Respect Your Parents: How Attribution and Rewriting Can Get Along
inkytonik
0
250
Embedding a Rewriting DSL in Scala
inkytonik
0
160
Other Decks in Research
See All in Research
Google Agent Development Kit (ADK) 入門 🚀
mickey_kubo
2
1.3k
LLM-as-a-Judge: 文章をLLMで評価する@教育機関DXシンポ
k141303
3
840
データサイエンティストの採用に関するアンケート
datascientistsociety
PRO
0
1.1k
【緊急警告】日本の未来設計図 ~沈没か、再生か。国民と断行するラストチャンス~
yuutakasan
0
140
Large Language Model Agent: A Survey on Methodology, Applications and Challenges
shunk031
14
9.2k
AIによる画像認識技術の進化 -25年の技術変遷を振り返る-
hf149
6
3.7k
数理最適化と機械学習の融合
mickey_kubo
15
9k
カスタマーサクセスの視点からAWS Summitの展示を考える~製品開発で活用できる勘所~
masakiokuda
2
140
NLP Colloquium
junokim
1
170
問いを起点に、社会と共鳴する知を育む場へ
matsumoto_r
PRO
0
470
AI エージェントを活用した研究再現性の自動定量評価 / scisci2025
upura
1
130
Delta Airlines® Customer Care in the U.S.: How to Reach Them Now
bookingcomcustomersupportusa
PRO
0
100
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Unsuck your backbone
ammeep
671
58k
Visualization
eitanlees
146
16k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Speed Design
sergeychernyshev
32
1k
For a Future-Friendly Web
brad_frost
179
9.8k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Scaling GitHub
holman
461
140k
YesSQL, Process and Tooling at Scale
rocio
173
14k
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