-
Notifications
You must be signed in to change notification settings - Fork 0
Keywords
Leon Starr edited this page Nov 6, 2023
·
3 revisions
There are not many keywords in Scrall by design. Consequently, you have a lot of freedom when it comes to naming things, but not total freedom. Avoid using the following keywords in names:
ITS // relative to nonlocal instance in reflexive hop
ME // for sending signals to self
AND, OR, NOT // in comparison/selection predicates
TRUE, FALSE // for convenience
Keywords are all in uppercase so that you can get away with a name like this:
dogs and cats ..= dogs + cats
The LHS is a labeled instance flow (assuming dogs, cats are also labeled instance flows)
But you can't do this!
dogs AND cats ..= dogs + cats // ERROR!
This won't work since you now have a boolean expression on the LHS.
Copyright 2020, 2021, 2022, 2023, 2025 © Leon Starr under MIT Open Source License
- Why they are problematic
- Instance attribute creation values
- Boolean values
- Special values
- Enumerated values
- Action block
- Statement
- Single line action
- Multiple dependent actions on a single line
- An action spread across multiple lines
- A conditional group of single line actions
- Comments
- Finding instances
- Attribute access
- Creation and deletion
- Subclass migration
- Creating a table from a class
- Creating a table with a definition
- Converting a table into a class
- Set operations on tables
- Set comparisons on tables
- Join
- Rename
- Extend
- Aggregation
- Rank
- Image
- Input values
- Signatures and name doubling
- Output values
- Execution order
- Sequential execution
- Conditional execution
- Signals
- Scrall has no for_each action
- Iteration