The inst inside the expression. Is this expression typable at the moment?
On Sep 29, 2015, at 4:14 PM, Sam Tobin-Hochstadt <[email protected]> wrote: > What use of `inst` produced `Nothing`? > > Sam > > On Tue, Sep 29, 2015 at 3:46 PM, Matthias Felleisen > <[email protected]> wrote: >> >> On Sep 29, 2015, at 3:25 PM, Sam Tobin-Hochstadt <[email protected]> >> wrote: >> >>> I think something problematic is happening with type inference here, >>> and better types could be picked. Right now, Typed Racket is doing >>> this: >>> >>> (compose (λ (x) x) (inst (λ #:forall (a) ({x : a}) x) Nothing)) >>> >>> when it should probably do >>> >>> (compose (λ (x) x) (inst (λ #:forall (a) ({x : a}) x) Any)) >>> >>> However, using polymorphic arguments (such as your second function) >>> to polymorphic functions (such as `compose`) in general won't produce >>> the results you want, and I recommend writing the instantiation you >>> want explicitly. >> >> >> >> Well yes, that's where I started with inst. The Nothing told me I was on the >> wrong track with inst. >> >> What you might be saying is 'use inst for compose'. >> >> -- Matthias >> >> >> >> >> >>> >>> Sam >>> >>> On Tue, Sep 29, 2015 at 2:33 PM, Matthias Felleisen >>> <[email protected]> wrote: >>>> >>>> Why does this >>>> >>>>> (compose (λ (x) x) (λ #:forall (a) ({x : a}) x)) >>>> >>>> have this type: >>>> >>>>> - : (-> Nothing Any) >>>> >>>> Thanks -- Matthias >>>> >>>> >>>> >>>> -- >>>> You received this message because you are subscribed to the Google Groups >>>> "Racket Developers" group. >>>> To unsubscribe from this group and stop receiving emails from it, send an >>>> email to [email protected]. >>>> To post to this group, send email to [email protected]. >>>> To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/racket-dev/7E7C582D-7066-4073-AAFD-9B6CA99F1F1E%40ccs.neu.edu. >>>> For more options, visit https://groups.google.com/d/optout. >> -- You received this message because you are subscribed to the Google Groups "Racket Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-dev/25693213-17D1-4B44-9B4B-A7A468C135F2%40ccs.neu.edu. For more options, visit https://groups.google.com/d/optout.
