Basic Programming
rascal-0.28.2
Rascal is a programming languages geared towards language processing:
- the backbone is procedural/functional programming with immutable data
- abstract and concrete grammars define parsers and hierarchical data-types
- relations and relational calculus provide database/logic query functionality
Here we briefly introduce the most relevant skills by example:
- source comments
- ./static typing
- Datatypes
- immutable values
- Enumerating
- ./Comprehensions
- pattern matching
- control structures
- case distinction
- Visiting
- ./Functions
- syntax definition and parsing
- Rewriting
- IDEConstruction
- code models
- equation solving
The reference manual spells out all syntax and semantics organized per language feature.