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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Tony Sloane
October 30, 2016
Research
830
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
More Decks by Tony Sloane
See All by Tony Sloane
Embedding Attribute Grammars
inkytonik
0
120
Respect Your Parents: How Attribution and Rewriting Can Get Along
inkytonik
0
130
LLVM and Scala
inkytonik
2
370
The Moama Functional Language Design and Implementation (and quite a bit about the Monto Disintegrated Development Environment)
inkytonik
0
160
Embedded Domain-Specific Languages
inkytonik
0
210
Monto: A Disintegrated Development Environment (WG 2.11 version)
inkytonik
2
170
Monto: A Disintegrated Development Environment
inkytonik
1
250
Respect Your Parents: How Attribution and Rewriting Can Get Along
inkytonik
0
280
Embedding a Rewriting DSL in Scala
inkytonik
0
190
Other Decks in Research
See All in Research
Cross-Media Information Spaces and Architectures
signer
PRO
0
320
セマンティック通信勉強会 6Gに向けたデバイス間効率的な通信の技術紹介・課題・今後展望
satai
3
230
NLP colloquium: AI Safety Survey
kanekomasahiro
0
860
Cross-Media Human-Information Interaction
signer
PRO
0
130
論文紹介:HalluCitation Matters
wasyro
0
130
Scalable dynamic origin-destination demand estimation enhanced by high-resolution satellite imagery data
satai
3
350
オーストリア流 都市の公共交通サービス水準評価@公共交通オープンデータ最前線2026
trafficbrain
0
210
Model Discovery and Graph Simulation: A Lightweight Gateway to Chaos Engineering
anatolykr
0
230
Fukui Shibiten 39 - AI Art
butchi
0
150
CVPR2026論文紹介_VLMにとって良いvision encoderとは何か?Rethinking Model Selection in VLM Through the Lens of Gromov-Wasserstein Distance
kobayashi31
1
170
Sequences of Logits Reveal the Low Rank Structure of Language Models
sansantech
PRO
1
290
データセンター事業者を取り巻く近年の状況とその中での研究開発動向、テストベッドへの貢献の可能性
kikuzo
1
270
Featured
See All Featured
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Building Adaptive Systems
keathley
44
3.1k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
How to Ace a Technical Interview
jacobian
281
24k
How to build a perfect <img>
jonoalderson
1
5.8k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
350
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
57k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.2k
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