Rascal is a grammar language created in 2013.
|#688on PLDB||10Years Old||775Users|
Rascal is an experimental domain specific language for metaprogramming, such as static code analysis, program transformation and implementation of domain specific languages. It is a general meta language in the sense that it does not have a bias for any particular software language. It includes primitives from relational calculus and term rewriting. Read more on Wikipedia...
module Syntax extend lang::std::Layout; extend lang::std::Id; start syntax Machine = machine: State+ states; syntax State = @Foldable state: "state" Id name Trans* out; syntax Trans = trans: Id event ":" Id to;