Re: no continuations

2004-01-09 Thread dvanhorn
Ashley Yakeley wrote:
 In article [EMAIL PROTECTED],
  [EMAIL PROTECTED] wrote:
 
Similarly, R5RS obligates any Scheme implementation to resort to
assignments when processing a letrec form.
 
 Not mine! I do use a polyvariadic fixed-point function.

An implementation may not
use a (polyvariadic) Y to implement letrec, unless the implementation
can prove that the difference is unobservable for the form in
question.
 
 Do you have an example of use of Y for letrec where a program would 
 violate R5RS?

http://groups.google.com/groups?selm=976rij%24jd1%241%40news.gte.com

In this post to c.l.scheme, Dorai Sitaram writes:

   letrec with set! is certainly different from letrec with Y,
   and you don't need call/cc to distinguish the two.

   (define *keep-track* '())

   (letrec ((fact (lambda (n) 
(set! *keep-track* (cons fact *keep-track*))
(if (= n 0) 1
(* n (fact (- n 1)))
 (fact 8))

   and then do

   (eq? (car *keep-track*) (cadr *keep-track*))

   If letrec is set!-based (as in Scheme), the
   result is #t.  If it is Y-based, the result is #f.  Why
   this is should be obvious if you mentally (or with
   pencil) trace what Y does.

   Scheme's letrec defines recursive procedures by making
   the lexical variable bound to a recursive procedure
   whose body contains the references to the same lexical
   variable.   In other words, data recursion in the
   underlying environment is used to represent the
   recursive procedure perceived by the user.  The
   fixed-point approach does not (and clearly
   cannot) do that.  

   There is no wrong choice in the sense that
   alternative choices were cut off.  Users have enough
   machinery to define their preferred version of letrec
   using syntactic extension.  But the letrec that
   comes with Scheme is an extremely good and pragmatic
   one, and is more efficient than a Y-based letrec could
   be expected to be. 

   --d

HTH,
/david
___
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: Graphics output from Haskell as eps

2003-02-17 Thread dvanhorn
Quoting Sarah Thompson [EMAIL PROTECTED]:

 Has anyone done much work on outputting graphics in eps format directly from
 Haskell? 
...
 Has anyone done anything already, or should I just pull down the PDF specs
 from Adobe and weigh in and write a library from scratch? If I do the
 latter, will anyone be likely to want to use it also?


Although not Haskell, you might be interested in looking at Wandy Sae-Tan's and
Olin Shiver's Functional PostScript, which is embeded in the Scheme shell; scsh.

   http://www.scsh.net/resources/fps.html

HTH

-d
___
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe