Laurenz
84cdc85ca7
Refresh parser 🌊
2021-02-18 15:06:00 +01:00
Laurenz
146eda102a
Move span directly into diagnostics 🚚
2021-02-11 19:26:47 +01:00
Laurenz
06ca740d01
Split evaluation and execution 🔪
2021-02-09 19:46:57 +01:00
Laurenz
d86a5e8a1f
Tidy up raw blocks 🧹
...
- Better trimming (only trim at the end if necessary)
- Fixed block-level layouting
- Improved pretty printing
- Flip inline variable to block
- Flip inline variable to display for math formulas
2021-02-03 21:34:49 +01:00
Laurenz
6fcef9973b
Refresh tests 🔄
2021-01-31 22:43:11 +01:00
Laurenz
89eb8bae49
New syntax 💎
...
- Everything everywhere!
- Blocks with curly braces: {}
- Templates with brackets: []
- Function templates with hashtag: `#[f]`
- Headings with equals sign: `= Introduction`
2021-01-30 12:09:26 +01:00
Laurenz
e847082435
Multi-expression blocks 🛍️
2021-01-26 21:13:52 +01:00
Laurenz
84ba547c7c
If expressions 🔀
2021-01-20 21:33:13 +01:00
Laurenz
29be90bf95
Assertions with [eq] + better tests 🩺
2021-01-17 13:53:22 +01:00
Laurenz
539735e668
Basic let bindings 🎞
2021-01-13 11:54:50 +01:00
Laurenz
3c7d249ae4
Rename token modes ✏
2021-01-10 20:48:32 +01:00
Laurenz
8275b186ba
Remove star-slash token ❌
2021-01-07 16:13:18 +01:00
Laurenz
8cad78481c
A few small improvements ♻
2021-01-01 17:54:31 +01:00
Laurenz
2b6ccd8248
Better parser testing ✅
2021-01-01 16:43:58 +01:00
Laurenz
4069f0744d
Parsing improvements 🧽
...
- Simplified scanner code
- Peek eagerly
- Skip whitespace and comments automatically in header mode
- Parse simple block expressions
- Move literal definitions into expression module
- Raw resolving tests
2020-12-31 17:48:56 +01:00
Laurenz
ba3d43f7b2
Refresh function call and dictionary syntax
...
- No colon between function name and arguments, just whitespace
- "Named" arguments (previously "keyword" arguments) use colon instead of equals sign
2020-12-27 20:45:20 +01:00
Laurenz
2336aeb4c3
Tweak parser error messages 🔮
2020-12-16 16:24:06 +01:00
Laurenz
1a70cb6a33
Naming and grammar ✔
2020-10-12 18:01:22 +02:00
Laurenz
d2e220245d
Move deco, pass and feedback into diagnostics module ↩
2020-10-07 18:24:47 +02:00
Laurenz
ef8aa763fa
Shorten some names ↔
2020-10-04 20:22:11 +02:00
Laurenz
dc8d5d2f1e
Small improvements 🧺
2020-10-02 20:22:08 +02:00
Laurenz
904bc392ab
Remove spans from token iterator 🧽
2020-10-02 19:17:47 +02:00
Laurenz
343982c56f
Optimize parser by remembering peeked token ⚡
2020-10-02 16:52:01 +02:00
Laurenz
3533268b1f
Refactor parser 🏞
2020-10-02 15:43:29 +02:00
Laurenz
01405902ba
Restructure parser files 🍔
2020-09-30 19:13:55 +02:00
Laurenz
4077a7c11e
Refactor raw blocks 💱
2020-09-30 18:59:33 +02:00
Laurenz
3c3730425f
SpanWith trait ↔
2020-09-30 14:38:46 +02:00
Laurenz
bc1b4216a8
Reorganize syntax types into two modules 📦
2020-09-30 12:45:33 +02:00