I would prefer taking this useful library and making it actually
useful to all Racket users.

Jay

On Tue, Jan 5, 2016 at 2:39 PM, 'John Clements' via Racket Users
<racket-users@googlegroups.com> wrote:
> Asumu, does this make sense to you? Note that in particular, I think that a 
> warning at the top of the pfds package wouldn’t have helped me; I think a 
> warning at the top of each pfds page would make a lot more sense.
>
> John
>
>> On Jan 5, 2016, at 11:00 AM, Sam Tobin-Hochstadt <sa...@cs.indiana.edu> 
>> wrote:
>>
>> Yes, I think a warning at the top of the documentation for the `pfds` 
>> package would make sense, and probably Asumu would accept such a pull 
>> request. You might follow the phrasing in the math/array library.
>>
>> Sam
>>
>> On Tue, Jan 5, 2016 at 1:49 PM 'John Clements' via Racket Users 
>> <racket-users@googlegroups.com> wrote:
>> This program constructs a trie containing exactly two keys; each is a list 
>> of 256 integers. On my machine, it takes *twelve seconds*. The time taken 
>> appears to be n^2 in the length of the key, so doubling it to 256 means 
>> it’ll take about a minute to add a key.
>>
>> #lang racket
>>
>> (require pfds/trie)
>>
>> (define (rand-list)
>>   (for/list ([i (in-range 128)])
>>     (random 256)))
>>
>> (define t (trie (list (rand-list))))
>> (define u (time (bind (rand-list) 0 t)))
>>
>> When I translate this to typed racket, the time taken is 0 ms.
>>
>> I feel like I got a bit burned here, and an ordinary user might simply 
>> conclude that Racket libraries are teh suck.
>>
>> Can we add a warning to the beginning of the documentation page for Tries 
>> (and perhaps for the other data structures as well) indicating that these 
>> functions are likely to be unusably slow in #lang racket?
>>
>> I propose the following, at the top of the documentation. Possibly in 
>> boldface.
>>
>> “NB: these data structures are written in Typed Racket. While they may be 
>> nominally usable in the (untyped) Racket language, the resulting dynamic 
>> checks will probably cause them to be unacceptably slow”
>>
>> Suggestions? May I make a pull request here?
>>
>> John
>>
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups 
>> "Racket Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to racket-users+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>
>
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.



-- 
Jay McCarthy
Associate Professor
PLT @ CS @ UMass Lowell
http://jeapostrophe.github.io

           "Wherefore, be not weary in well-doing,
      for ye are laying the foundation of a great work.
And out of small things proceedeth that which is great."
                          - D&C 64:33

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to