Jonathan Lindegaard Starup
Jonathan Lindegaard Starup
I think we need documentation for effects. This would: 1) be a place for new people to learn about purity, and 2) A place to explain exactly what each effect...
> We are updating the syntax such that `{ ... }` must always describe a concrete effect set. What is a concrete set? a subset of IO/NonDet/Pure and read/write regions?
> @JonathanStarup Does this apply to all flatMaps or just some? the speed increase?
Yes * List * DelayList (I'm not sure because of the lazyness, but current implementation looks quadratic) No * Option (one element) * Result (one element) * Choice (one element)...
I think these files should be added as tests to check compilation.
> > Jonathan wants to highlight every source of the effect. > > OK; I think that is too difficult to define precisely. I would be happy with just highlighting...
# Records vs ADTs I do not know when to use `Point(x, y)` vs `{x=Int32, y=Int32}` vs `Point({x=Int32, y=Int32})` vs `opaque Point(x, y)` | | ADT | Records | ADT...
namespace ticket @magnus-madsen https://github.com/flix/flix/issues/4167
Encapsulation: How and when enum cases should be hidden from external use
A pure debug print expression for debugging although it might be antithetical to other flix decisions.