runtime features / purity checking
✓ 8 passing ○ 1 planned
Lessons
1 ✓
Passing
001 pure proc annotation
2 ✓
Passing 002 unannotated proc impure
3 ✓
Passing 003 subflow locally pure
4 ✓
Passing 004 pure on event redundant
5 ✓
Passing 005 subflow transitive pure
6 ✓
Passing 006 event purity from pure impl
7 ✓
Passing 007 event purity from impure impl
8 ✓
Passing 010 subflow impure
9 ○
Planned 011 opaque procs — The point of an [opaque] proc is to have to highlight it as opaque because you're intentionally calling Koru-events FROM a Koru-event, breaking the flow. This has performance implications, and is almost ALWAYS mechanically refactoringable to returning to the calling flow, making the code easier to optimize.