[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] Comments on draft 6



On Fri 24 Feb 2012 13:53, Jussi Piitulainen <jpiitula@x> writes:

> Implementations can do anything they like when the report says "it is
> an error".

Implementations can do whatever they like, in general ;-)

But consider:

  (define t 1)
  (let ()
    (define-syntax define-const
      (syntax-rules ()
        ((_ var val)
         (begin
           (define t val)
           (define (var) t)))))
    (define-const foo 2)
    t)

In Scheme, this must evaluate to 1.  I think all implementations support
this.

Now consider:

  (define t 1)
  (define-syntax define-const
    (syntax-rules ()
      ((_ var val)
       (begin
         (define t val)
         (define (var) t)))))
  (define-const foo 2)
  t

Does Scheme consider it a goal to specify the result of this program?

Andy
-- 
http://wingolog.org/

_______________________________________________
Scheme-reports mailing list
Scheme-reports@x
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports