15 Commits

Author SHA1 Message Date
Laurenz
75472fee1a Division for lengths 2022-05-04 22:14:51 +02:00
Laurenz
f9e115daf5 New block spacing model 2022-04-30 14:12:28 +02:00
Laurenz
1192132dc0 Rename length-related types
`Fractional` => `Fraction`
`Relative` => `Ratio`
`Linear` => `Relative`
2022-04-07 16:19:51 +02:00
Laurenz
beca01c826 Methods 2022-03-18 23:43:58 +01:00
Laurenz
5ac7eb3860 Rename template to content 2022-03-11 23:36:06 +01:00
Laurenz
57f5c0a1b1 Set Rules Episode V: The Tests Strike Back 2021-12-15 11:12:38 +01:00
Laurenz
3968181622 Replace .. syntax with range function 2021-10-25 13:38:32 +02:00
Laurenz
3481d8cc81 More utility functions
- join("a", "b", "c", sep: ", ")
- int("12")
- float("31.4e-1")
- str(10)
- sorted((3, 2, 1))
2021-08-31 12:59:53 +02:00
Laurenz
ccb4be4da4 Make range-end exclusive 2021-08-12 14:54:52 +02:00
Laurenz
eaa3cbaa9c Array and dictionary indexing 2021-08-12 13:56:23 +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
9950627789 Even shorter error annotations
Error annotations are now relative to the first following non-comment line.
2021-07-09 10:50:25 +02:00
Laurenz
5a500fb8a7 Range operator 2021-07-08 19:12:07 +02:00
Laurenz
c5635d8a3f Handle missing arguments to with expr 2021-07-08 18:56:52 +02:00
Laurenz
8b58171d7c Reorganize test cases 2021-05-18 00:36:11 +02:00