Summary

Support capturing multiple value type in `forall`, etc.

Metadata

Description

As requested by alaricsp in this thread, it would be nice if one could capture and refer to multiple-valued return types with `forall`, e.g.:

 (: call-with-foo (forall (a) (foo (-> . a) -> . a)))
 
 (define (call-with-foo foo thunk)
   ; do some stuff and return whatever thunk does,
   ; even if it's multi-valued:
   (thunk))

(The above is just a sketch, not necessarily the right way to express this..)

Changes and comments

[2016-08-25 21:47:34 UTC] sjamaan set difficulty to medium