Re: [racket] place: terrible performance of place-channel-get?

2014-11-12 Thread Alexey Cherkaev
Hi Matthew, Thanks a lot for the reply! This works! Thanks a lot. Regards, Alexey On 12 Nov 2014, at 18:52, Matthew Flatt wrote: > I'll push a repair to the development version. > > > The problem isn't so much that message copying/transfer is slow, but > that the rule to trigger an all-pla

Re: [racket] Polymorphic types and curried functions

2014-11-12 Thread Matthias Felleisen
Sorry that was a superfluous (premature) require: #lang typed/racket ;; syntax ;; (:/c f (α β γ) (-> A B (-> C (-> D E ;; ==> ;; (: f (All (α) (-> A B (All (β) (-> C (All (γ) (-> D E))) (define-syntax (:/c stx) (syntax-case stx (All/c) [(_ f (A ...) τ) (let ([σ (All/c #'(A ...) #

Re: [racket] Polymorphic types and curried functions

2014-11-12 Thread Matthias Felleisen
You cannot write macros that expand within types (yet). But you can write macros for : like this: #lang typed/racket (require (for-template (only-in typed/racket All ->))) ;; syntax ;; (:/c f (α β γ) (-> A B (-> C (-> D E ;; ==> ;; (: f (All (α) (-> A B (All (β) (-> C (All (γ) (-> D E))

[racket] Polymorphic types and curried functions

2014-11-12 Thread Jack Firth
I've been mucking around with Typed Racket some and was writing a polymorphic curried function when something I found counter-intuitive popped up. I had this function: (: compare-projection (All (A B) (-> (-> A A Boolean) (-> (-> B A) (-> B B Boolean) (define (((compare-projection a<)

Re: [racket] the current package submission system is a mess

2014-11-12 Thread Ryan Davis
> > On Nov 5, 2014, at 17:53, Jay McCarthy wrote: > > Hi Ryan, > > > On Wed, Nov 5, 2014 at 7:14 PM, Ryan Davis wrote: >> The package submission system is hostile and incredibly frustrating to use. >> >> I've tried a bazillion times now to submit a package (check-sexp-equal) and >> ensure t

Re: [racket] place: terrible performance of place-channel-get?

2014-11-12 Thread Matthew Flatt
I'll push a repair to the development version. The problem isn't so much that message copying/transfer is slow, but that the rule to trigger an all-places GC doesn't accommodate a large, not-yet-delivered message. I'll repair that rule. Most of the process time in your example shows up as GC tim