Basic Programming
rascal-0.40.17
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.