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
810
0
Share
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
110
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
150
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
270
Embedding a Rewriting DSL in Scala
inkytonik
0
190
Other Decks in Research
See All in Research
羽田新ルート運用6年の検証
1manken
0
160
ペットのかわいい瞬間を撮影する オートシャッターAIアプリへの スマートラベリングの適用
mssmkmr
0
510
多様なデータを許容し学習し続ける模倣学習 / Advanced Imitation Learning for VLA
prinlab
0
210
量子コンピュータの紹介
oqtopus
0
320
コーディングエージェントとABNを再考
hf149
2
700
The Landscape of Agentic Reinforcement Learning for LLMs: A Survey
shunk031
4
980
姫路市 -都市OSの「再実装」-
hopin
0
1.7k
論文紹介 "ReSim: Reliable World Simulation for Autonomous Driving"
kogo
0
610
台湾モデルに学ぶ詐欺広告対策:市民参加の必要性
dd2030
0
340
Φ-Sat-2のAutoEncoderによる情報圧縮系論文
satai
4
740
Model Discovery and Graph Simulation: A Lightweight Gateway to Chaos Engineering
anatolykr
0
180
FUSE-RSVLM: Feature Fusion Vision-Language Model for Remote Sensing
satai
3
830
Featured
See All Featured
Are puppies a ranking factor?
jonoalderson
1
3.5k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
220
The World Runs on Bad Software
bkeepers
PRO
72
12k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
380
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Navigating Weather and Climate Data
rabernat
0
210
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
YesSQL, Process and Tooling at Scale
rocio
174
15k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
180
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
210
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
400
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