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
700
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
69
Respect Your Parents: How Attribution and Rewriting Can Get Along
inkytonik
0
69
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
89
Monto: A Disintegrated Development Environment
inkytonik
1
210
Respect Your Parents: How Attribution and Rewriting Can Get Along
inkytonik
0
220
Embedding a Rewriting DSL in Scala
inkytonik
0
130
Other Decks in Research
See All in Research
Weekly AI Agents News! 10月号 論文のアーカイブ
masatoto
1
250
医療支援AI開発における臨床と情報学の連携を円滑に進めるために
moda0
0
110
第79回 産総研人工知能セミナー 発表資料
agiats
2
160
尺度開発における質的研究アプローチ(自主企画シンポジウム7:認知行動療法における尺度開発のこれから)
litalicolab
0
350
snlp2024_multiheadMoE
takase
0
430
ニューラルネットワークの損失地形
joisino
PRO
35
16k
2024/10/30 産総研AIセミナー発表資料
keisuke198619
1
330
ダイナミックプライシング とその実例
skmr2348
3
400
Language is primarily a tool for communication rather than thought
ryou0634
4
740
12
0325
0
190
[2024.08.30] Gemma-Ko, 오픈 언어모델에 한국어 입히기 @ 머신러닝부트캠프2024
beomi
0
720
Kaggle役立ちアイテム紹介(入門編)
k951286
14
4.6k
Featured
See All Featured
Producing Creativity
orderedlist
PRO
341
39k
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
How to Ace a Technical Interview
jacobian
276
23k
Agile that works and the tools we love
rasmusluckow
327
21k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
A Tale of Four Properties
chriscoyier
156
23k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Into the Great Unknown - MozCon
thekraken
32
1.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
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