Matthew Lutze
Matthew Lutze
Note that this is difficult since type classes have their associated companion namespaces
- [x] Fix bug with difference effects in minimization
> Semantic highlighting is sometimes broken: `let _a = f(u -> do Throw.throw(u));`. Unable to reproduce
Renaming Effs and Ops is a little tricky. We do the same namespacing trick as Classes, using a companion namespace, so changing an Eff name is tantamount to changing a...
> Allow sugar `without Throw,NonDet,Print` Note that this will introduce a parsing ambiguity. Consider: `let x = (e without Throw, None, Fish)` Is `x` a tuple or a singleton?
> > > Allow sugar `without Throw,NonDet,Print` > > > > > > Note that this will introduce a parsing ambiguity. Consider: `let x = (e without Throw, None, Fish)`...
> Use effects in monomorphization (?) What does this mean?
> Non-public op: The explanation should state: An effect operation must be public. The `IllegalPrivateDeclaration` is a single error covering classes, instances, and effects. I could: 1. Make the error...
The location of an `OpSym` carries its entire fully-qualified name, with namespace and effect name. So we can't narrow it down to only the operation part. Some hacky options that...
Right, but `OpSym` points to `Console.print`, so a rename (I think) would try to change `Console.print` to `print2`.