[plt-scheme] mzc from svn, getting new errors compiling mysql extension

From: Eli Barzilay (eli at barzilay.org)
Date: Tue Jan 22 14:19:25 EST 2008

On Jan 22, Matthias Felleisen wrote:
> 
> On Jan 22, 2008, at 2:05 PM, Geoff Knauth wrote:
> 
> > On Jan 22, 2008, at 09:38, Matthew Flatt wrote:
> >> I had broken `compiler/cffi', now fixed.
> >
> > Glory be, it works!  Words escape me.
> >
> > Language: Lazy Scheme
> > > (define (thanks) (cons "Thanks!!" (thanks)))
> > > (thanks)
> > ("Thanks!!" . #<promise:?>)
> >
> > Hmm.
> >
> > Prelude> let thanks = "Thank you!!" : thanks
> > Prelude> thanks
> > ["Thank you!!","Thank you!!","Thank you!!","Thank you!!","Thank  
> > you!!",...]
> 
> Some lazy languages aren't really lazy. They just dump everything
> they know as soon as you hit <return> at the prompt. And then you
> may regret it latter, at least as soon as you discover the next bug
> in Matthew's code base :-)

Actually, you could do this with Lazy Scheme (note that `thanks' is
not a function):

  > (define thanks (cons "Thanks!!" thanks))
  > (!! thanks)
  #0=("Thanks!!" . #0#)

but in v4 this will probably go away, and you'll end up with an
infinite list again.  (When using `!!', which will probably happen
automatically for REPL expressions.)

-- 
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!


Posted on the users mailing list.