15 Commits

Author SHA1 Message Date
Laurenz
2a45650dcc Keyed pairs 2022-05-04 23:12:31 +02:00
Laurenz
e674fd7e90 New raw theme & nicer debug representation 2022-05-04 22:14:57 +02:00
Laurenz
cd62792c0a Prevent duplicate named arguments and dictionary keys 2022-04-11 16:11:16 +02:00
Laurenz
5ac7eb3860 Rename template to content 2022-03-11 23:36:06 +01:00
Laurenz
2a3d0f4b39 Set Rules Episode VII: The Set Awakens 2021-12-15 20:27:41 +01:00
Laurenz
072e7c710c Reduce namespace pollution 2021-11-02 10:39:45 +01:00
Laurenz
de6786eb28 Allow multiple template bodies 2021-10-29 16:04:55 +02:00
Laurenz
594809e35b Library functions behave more imperatively
- Templates scope state changes
- State-modifying function operate in place instead of returning a template
- Internal template representation contains actual owned nodes instead of a pointer to a syntax tree + an expression map
- No more wide calls
2021-08-17 22:20:37 +02:00
Laurenz
eaa3cbaa9c Array and dictionary indexing 2021-08-12 13:56:23 +02:00
Laurenz
e35fca54a0 Change indent from 4 to 2 spaces 2021-07-30 18:49:20 +02:00
Laurenz
1ee1d078e2 Fatal errors
- Makes errors fatal, so that a phase is only reached when all previous phases were error-free
- Parsing still recovers and can produce multiple errors
- Evaluation fails fast and can thus produce only a single error (except for parse errors due to an import)
- The single error that could occur during execution is removed for now
- Removes Value::Error variant
2021-07-30 18:49:19 +02:00
Laurenz
32a6b673bc Make use of wide calls 2021-06-29 13:49:50 +02:00
Laurenz
63cf361496 Make font take everything as keyword arguments 2021-06-25 18:14:19 +02:00
Laurenz
edff2ae680 Remove template pretty printing
Was buggy and pretty useless anyway since it couldn't peek into function templates.
2021-06-09 10:45:49 +02:00
Laurenz
8b58171d7c Reorganize test cases 2021-05-18 00:36:11 +02:00