Antonio,

That's weird. With that example, I do see the timings you mentioned, but
if I turn on TR's timing logging, I see that almost all the time is
being spent in pass 1 of the typecheck. I.e., in a different place than
your original example, way earlier in the TR implementation.

That makes me suspect that this new example exhibits a different issue,
which is less likely to be related to the original bug you reported.

Vincent



On Thu, 10 Sep 2015 16:14:43 -0500,
Antonio Leitao wrote:
> 
> Hi,
> 
> On Thu, Sep 10, 2015 at 5:16 PM, Vincent St-Amour
> <[email protected]> wrote:
> 
>     [Re-adding dev. Please reply all in the future.]
>     
>     
> 
> Sorry. I was afraid the log files would annoy people.
> 
>     I'll look into `change-provide-fixups`, but it would be really
>     helpful
>     if you could share your problematic program, or at least a fragment
>     that
>     exhibits this behavior. Otherwise, I don't have a good example
>     program
>     to measure.
> 
> Here is a MWE:
> 
> #lang typed/racket
> (require (for-syntax racket/syntax))
> 
> (define-syntax (structs stx)
> (syntax-case stx ()
> [(structs n)
> (with-syntax ([(name ...)
> (for/list ([i (in-range (syntax->datum #'n))])
> (format-id #'structs "struct-~a" i))]
> [(fname ...)
> (for/list ([i (in-range (syntax->datum #'n))])
> (format-id #'structs "func-~a" i))])
> #'(begin
> (define-type (Union T)
> (U Number (name T) ...))
> (begin
> (struct (T) name
> ([x : (Union T)]))
> (define #:forall (T) (fname [x : (Union T)])
> (name x)))
> ...))]))
> 
> The approximate times I got are:
> 
> (structs 4) ;2s
> (structs 5) ;7s
> (structs 6) ;42s
> 
> Hope this helps and thanks in advance for your efforts.
> 
> Best,
> António. 

-- 
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/m2k2ryc4z4.wl-stamourv%40eecs.northwestern.edu.
For more options, visit https://groups.google.com/d/optout.

Reply via email to