-
Notifications
You must be signed in to change notification settings - Fork 0
Symbols
Leon Starr edited this page Sep 6, 2021
·
14 revisions
| Symbol | Context | Usage |
|---|---|---|
* |
*<Class> |
create instance |
| restriction | select all instances | |
| projection | select all attributes | |
*I<n> projection |
project all identifer attrs | |
| computation | type specific op (multiply) | |
= |
all | scalar value assignment |
#= |
all | table value assignment |
#.= |
all | assign at most one tuple |
.= |
all | assign at most one instance |
..= |
all | assign 0, 1 or many instances |
0 |
restriction | select no instances |
1 |
restriction | select at most one instance |
*In |
projection | project all In attributes |
-attr |
projection | select all but attr |
~ |
path | repeated hopping |
-> |
all | send signal |
@ |
all | time of signal delivery |
=> |
all | asynch bridge |
: |
restriction | equals, matches |
: |
projection | rank delimiter |
; |
table definition | row delimiter |
!=, ==, <, >, <=, >=
|
all | comparison |
<name> |
after action same line | set sequence token |
<name> |
before action same line | token enables action |
<>, ` |
<> |
, <> |
<, <_, _>, >
|
between table values | set comparison |
// |
all | comment |
& |
&R<num> |
relate instances |
& |
before assoc class | initialize assoc class attrs |
!& |
all | unrelate |
! |
(!boolean scalar) | not |
! |
scalar1!scalar2 = | assign true and false |
; |
all | separates actions and indicates no flow dependency between them on one line |
/ |
all | hop across relationship |
^+, ^-
|
before item in restriction | greatest, least |
^+, ^-
|
after : in projection |
rank ascending, descending |
^>, <^, _>, <_
|
all | next greater, next lesser |
^, +, *, - --
|
all | set operation on table value |
+=, -=
|
all | combine assignment |
#!! |
all | image operation (see c.j. date) |
^, +, -
|
between table values | set operations |
#[ ] |
#= assignment |
table constructor |
{ } |
all | action block |
( ) |
rhs boolean assignment | boolean expression |
( ) |
in computation | math precedence |
( ) |
after class name | restriction |
( ) |
after data type | selector |
( ) |
.( ) |
projection |
( ) |
signal action, method, bridge | parameter list |
[] |
after class or table name | rename,extend expression |
. |
class.attribute, table.attribute | attribute access |
. |
.enumvalue | enumerated element value |
. |
type.operation | operation on a type |
:: |
variable::data type | declare data type |
?? |
before instance set or table variable | cardinality |
>> |
[ a >> b ] |
rename attribute |
>> |
[ >>c.(formula) ] |
extend table |
>> |
migration | migrate instance |
+ |
+<attr><exp> in projection |
extend operator |
=>> |
in non-state activity | return value |
? |
after boolean expr | if-then |
? |
after enum value | switch |
? |
suffix in output expression | output boolean value |
>>> |
assertion |
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