typed-racket icon indicating copy to clipboard operation
typed-racket copied to clipboard

Intermediate results from nested polymorphic types expose gensyms

Open lexi-lambda opened this issue 11 years ago • 0 comments

Originally discovered via this Stack Overflow question.

Given the following function:

(: first-value (All (A) (-> A (All (B) (-> B A)))))
(define ((first-value a) b)
  a)

Evaluating this in the REPL prints the following type:

> (first-value 'foo)
- : (All (g3743) (-> g3743 'foo))

lexi-lambda avatar Mar 02 '15 07:03 lexi-lambda