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
820
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
東京大学工学部計数工学科、計数工学特別講義の説明資料
kikuzo
0
520
英語教育 “研究” のあり方:学術知とアウトリーチの緊張関係
terasawat
1
1k
正規分布と最適化について
koide3
1
270
Research Engineerという仕事 / Research Engineering: Bridging Research and Business
chck
1
220
Ghost in the 7‑Zip: The Shadow of Residential Proxies Creeping into Your Life
nttcom
0
1.3k
The Landscape of Agentic Reinforcement Learning for LLMs: A Survey
shunk031
4
1.1k
長時間動画QAにおけるマルチエージェント推論 ・SVAgent: Storyline-Guided Long Video Understanding via Cross-Modal Multi-Agent Collaboration
murakawatakuya
1
150
FUSE-RSVLM: Feature Fusion Vision-Language Model for Remote Sensing
satai
3
880
YOLO26_ Key Architectural Enhancements and Performance Benchmarking for Real-Time Object Detection
satai
3
820
CVPR2026論文紹介_VLMにとって良いvision encoderとは何か?Rethinking Model Selection in VLM Through the Lens of Gromov-Wasserstein Distance
kobayashi31
1
150
Cross-Media Information Spaces and Architectures
signer
PRO
0
300
2026 東京科学大 情報通信系 研究室紹介 (すずかけ台)
icttitech
0
3.9k
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
55
12k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.4k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
260
From π to Pie charts
rasagy
0
220
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
The Spectacular Lies of Maps
axbom
PRO
1
820
RailsConf 2023
tenderlove
30
1.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
KATA
mclloyd
PRO
35
15k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
450
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