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

Re: [Scheme-reports] Current tickets for the 5th ballot - 281



xacc.ide@x scripsit:

> IronScheme fails, and will fail every one of these funky eval examples
> you have provided.

That turns out not to be the case:

$ mono /opt/IronScheme/IronScheme.Console.exe -nologo -emacs
> (define e (interaction-environment))
> (define x (list 'cons 1 2))
> (define y (list (list 'quote 'cons) 1 2))
> (set-car! x cons)
> (set-car! (cdar y) cons)
> x
(#<procedure cons> 1 2)
> y
('#<procedure cons> 1 2)
> (eval x e)
Unhandled exception during evaluation:
&message: "invalid expression"
&syntax:
  form: #<procedure cons>
  subform: #f
&trace: #<syntax #<procedure cons>>

> (eval y e)
(1 . 2)
> 

So while the unquoted procedure object test fails, the quoted procedure
object test succeeds, because IronScheme, like every other system except
Scheme48/scsh, does not check what kind of object is hidden in a QUOTE
syntax form.

-- 
John Cowan   cowan@x   http://ccil.org/~cowan
I must confess that I have very little notion of what [s. 4 of the British
Trade Marks Act, 1938] is intended to convey, and particularly the sentence
of 253 words, as I make them, which constitutes sub-section 1.  I doubt if
the entire statute book could be successfully searched for a sentence of
equal length which is of more fuliginous obscurity. --MacKinnon LJ, 1940

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