[racket] Performance help
2015-01-02 17:10 GMT+01:00 Matthias Felleisen <matthias at ccs.neu.edu>:
>
> Jens -- thanks for re-directing us to your article. This saved me quite
> some time. I noticed the lacking abstractions (slicing, comprehension)
> and considered sketching a prototype to use with this program. I decided
> to wait till today because it didn't address what bothered me most:
>
> speed.
One trick: change the regular expression in words in order to
get rid of the call to string-downcase:
(regexp-split #rx"[^a-zA-Z]" buf)
Another trick: the regular expression matchers in Racket works both
on strings and ports, so train can be written
(define (train fname)
(freqs (words (open-input-file fname))))
I am not sure whether it will give a speedup though.
/Jens Axel