Re: [racket] Racket macros that run on files

2012-11-04 Thread Neil Van Dyke
So you would like to be able to do things like rename an identifier, change "(if X Y)" to "(and X Y)", change "(if (not X) Y Z)" to "(if X Z Y)", etc.? If so, I would probably start by letting user specify transformation rules like for "syntax-case" or "syntax-parse", do "read-syntax", do som

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Sam Tobin-Hochstadt
On Sun, Nov 4, 2012 at 8:51 PM, Matthew Flatt wrote: > At Sun, 4 Nov 2012 20:35:30 -0500, Sam Tobin-Hochstadt wrote: >> Do you have a sense of why Racket performs poorly on the `paraffins` >> benchmark? > > I wouldn't go so far as "poor" for that result, I only ventured that characterization beca

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Sam Tobin-Hochstadt
On Sun, Nov 4, 2012 at 8:48 PM, Robby Findler wrote: > I think it is difficult to see that those integers do not escape > fixnum range. :) In particular, we can learn from the Online Encyclopedia of Integer Sequences that they escape Racket's fixnum range on a 32 bit machine like the one I'm typi

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Matthew Flatt
At Sun, 4 Nov 2012 20:35:30 -0500, Sam Tobin-Hochstadt wrote: > Do you have a sense of why Racket performs poorly on the `paraffins` > benchmark? I wouldn't go so far as "poor" for that result, but, anyway... I think that benchmark turns out to measure mostly allocation. Racket in 32-bit mode, wh

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Robby Findler
I think it is difficult to see that those integers do not escape fixnum range. :) On Sun, Nov 4, 2012 at 7:42 PM, Matthias Felleisen wrote: > > Hmph. I would expect TR to perform as fast as 'unsafe'. > > > On Nov 4, 2012, at 7:40 PM, Matthew Flatt wrote: > >> 2668 msecs when I declare `cycle-leng

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Matthew Flatt
I tried using the type `(Fixnum -> Fixnum)', but there's a multiplication in the function. At Sun, 4 Nov 2012 20:42:48 -0500, Matthias Felleisen wrote: > > Hmph. I would expect TR to perform as fast as 'unsafe'. > > > On Nov 4, 2012, at 7:40 PM, Matthew Flatt wrote: > > > 2668 msecs when I dec

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Matthias Felleisen
Hmph. I would expect TR to perform as fast as 'unsafe'. On Nov 4, 2012, at 7:40 PM, Matthew Flatt wrote: > 2668 msecs when I declare `cycle-length' as `(Integer -> Integer)' and > change `(even? n)' to `else', or 2809 msecs if I add `[else 0]' instead > of changing `(even? n)'. > > At Sun, 4 N

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Sam Tobin-Hochstadt
On Sun, Nov 4, 2012 at 8:00 PM, Matthew Flatt wrote: > At Sun, 4 Nov 2012 16:38:25 -0800 (PST), Hugh Aguilar wrote: >> Has anybody done any benchmarks comparing Racket, Gambit, Chicken, or >> any other Scheme, for speed? > > As it happens, as a sanity check on various changes that I've made > rece

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Matthew Flatt
At Sun, 4 Nov 2012 16:38:25 -0800 (PST), Hugh Aguilar wrote: > Has anybody done any benchmarks comparing Racket, Gambit, Chicken, or > any other Scheme, for speed? As it happens, as a sanity check on various changes that I've made recently, I've recently re-run a bunch of conventional Scheme bench

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Robby Findler
Nice! Thanks. Robby On Sun, Nov 4, 2012 at 6:40 PM, Matthew Flatt wrote: > 2668 msecs when I declare `cycle-length' as `(Integer -> Integer)' and > change `(even? n)' to `else', or 2809 msecs if I add `[else 0]' instead > of changing `(even? n)'. > > At Sun, 4 Nov 2012 18:30:21 -0600, Robby Find

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Matthew Flatt
2668 msecs when I declare `cycle-length' as `(Integer -> Integer)' and change `(even? n)' to `else', or 2809 msecs if I add `[else 0]' instead of changing `(even? n)'. At Sun, 4 Nov 2012 18:30:21 -0600, Robby Findler wrote: > And just to complete the list, how does the TR version fare? > > Robby

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Hugh Aguilar
Has anybody done any benchmarks comparing Racket, Gambit, Chicken, or any other Scheme, for speed? It seems easier to go from Racket to Gambit or Chicken than from Racket to CL --- pretty much just a matter of using different libraries. It may even be possible to have code that compiles under d

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Robby Findler
And just to complete the list, how does the TR version fare? Robby On Sun, Nov 4, 2012 at 6:26 PM, Matthew Flatt wrote: > Thanks! > > Sometimes, a x3 difference means that we're missing a straightforward > opportunity in performance, and that was the case here. The Racket > program spent most of

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Matthew Flatt
Thanks! Sometimes, a x3 difference means that we're missing a straightforward opportunity in performance, and that was the case here. The Racket program spent most of its time in generic `/' by pessimistically expecting a non-integer result. I've adjusted the JIT to optimistically compute and che

Re: [racket] Racket macros that run on files

2012-11-04 Thread Vincent St-Amour
Neil Van Dyke wrote a PLaneT package for programmatic file editing. http://planet.racket-lang.org/display.ss?package=progedit.plt&owner=neil Is this what you're looking for? Vincent At Thu, 1 Nov 2012 23:49:41 -0400, Patrick Mahoney wrote: > > [1 ] > [1.1 ] > Hello all, > > Is there a

[racket] An easy route to define-datatype in BSL?

2012-11-04 Thread Prabhakar Ragde
I'm debating trying to use something like define-datatype, as used in EOPL and PLAI (and available in the Racket languages that support those books) early in my first-year undergraduate class. (Opinions on the wisdom of this, or on my sanity in general, by direct e-mail, please.) In a teaching

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Matthias Felleisen
I don't think anyone is maintaining Dorai's package anymore. He has become a master of toasts and doesn't have time for his hobby anymore. Consider taking it on as a service to the CL and Racket communities -- Matthias On Nov 4, 2012, at 2:31 PM, daniel rupistraliz wrote: > Matthias Fellei

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread daniel rupistraliz
Matthias Felleisen writes: > > > What Matthew and everyone else said is critical. Read those > before reading on. Also consider using optimizations in Racket > or converting to TR and asking for fixed-point numbers. > > ;; --- > > However, we do understand the need for running programs in

[racket] adding a pass in racket garbage collector

2012-11-04 Thread RAHUL ASATI
I want to add a pass in racket garbage collector for my project but i am not getting the correct start point. I want to know entry point for garbage collector in racket. Racket Users list: http://lists.racket-lang.org/users

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Matthias Felleisen
What Matthew and everyone else said is critical. Read those before reading on. Also consider using optimizations in Racket or converting to TR and asking for fixed-point numbers. ;; --- However, we do understand the need for running programs in both worlds (Racke and CL). An alternative is to

[racket] translate from Racket to Common Lisp

2012-11-04 Thread daniel rupistraliz
racket: Welcome to Racket v5.2.1. > (define (cycle-length n) (cond [(= n 1) 1] [(odd? n) (add1 (cycle-length (add1 (* 3 n] [(even? n) (add1 (cycle-length (/ n 2)))])) (time (for ([i (in-range 1 100)]) (cycle-length i))) > cpu time:

Re: [racket] Scope of PLaneT was: (no subject)

2012-11-04 Thread Hendrik Boom
On Sun, Nov 04, 2012 at 01:49:10AM -0400, Neil Van Dyke wrote: > Edward Blake wrote at 11/02/2012 06:23 PM: > >The kanji search app for example is mostly > >intended to be a end user thing and may be distributed with 90 megs of > >data files before compression (it contains a small subset of > >Wikt

Re: [racket] tutorials on using redex

2012-11-04 Thread Shriram Krishnamurthi
Currently: indirectly, yes, directly, no. But I plan to write up some material that will make the transition from PLAI 2/e to SEwPR. Half the problem is one of notation, which can be explained. But PLAI covers explicitly many things that SEwPR seewps under the rug by virtue of assuming you alrea

Re: [racket] tutorials on using redex

2012-11-04 Thread Grant Rettke
Shriram just to over-communicate here, you are saying that reading and working through PLAIV2 would help us non-PLT-professionals grok the Semantics Engineering book? On Sun, Nov 4, 2012 at 9:07 AM, Shriram Krishnamurthi wrote: > Second edition, now newer and better, currently being written (but

Re: [racket] tutorials on using redex

2012-11-04 Thread Shriram Krishnamurthi
Second edition, now newer and better, currently being written (but most of the way there): http://www.cs.brown.edu/courses/cs173/2012/book/ On Sun, Nov 4, 2012 at 9:55 AM, Asumu Takikawa wrote: > On 2012-11-02 12:21:25 -0700, geb a wrote: > > I've been working with redex (a little bit) trying

Re: [racket] tutorials on using redex

2012-11-04 Thread Asumu Takikawa
On 2012-11-02 12:21:25 -0700, geb a wrote: > I've been working with redex (a little bit) trying to work my way > through "Semantics Engineering". Is there anything resembling an > idiots guide to programming languages? You could try reading PLAI, which is a great book and available online: http

Re: [racket] translate from Racket to Common Lisp

2012-11-04 Thread Matthew Flatt
At Fri, 2 Nov 2012 16:25:09 + (UTC), daniel rupistraliz avez wrote: > One motivation is speed, for example a recent example in the racket blog > about > the 2n+1 problem gives 1200 milliseconds in Racket and 500 in sbcl (without > declaring fixnum or any other optimization). Although it's n