unison/unison-src/transcripts/fix2353.md
2024-06-25 11:11:07 -07:00

390 B

scratch/main> builtins.merge
use builtin Scope
unique ability Async t g where async : {g} Nat
unique ability Exception where raise : Nat -> x

pure.run : a -> (forall t . '{Async t g} a) ->{Exception, g} a
pure.run a0 a =
  a' : forall s . '{Scope s, Exception, g} a
  a' = 'a0 -- typechecks
  -- make sure this builtin can still be referenced
  Scope.run a'