Coding 2023-09-07
I'm looking at the Koka documentation on effects, and here are the way things look offhand:
- An effect can be named.
- An effect can be linear.
- An effect can be recursive.
- An effect can have a "kind".
- An effect can be "in" a type.
- An effect can define any number of operations, including zero.
- An operation can be pub.
- An operation can be val, fun, or ctl
...
A handler can define a finally clause, even though finally is also a function??? Like, Impliciula would be able to get away with this, because one would be spelled finally and one would be spelled finally::, but Koka has more conventional syntax, so I'm confused.
Anyway, I'm trying to read about the implications of all of this, but it's late and I'm tired.
Good night.