chicken-hackers
[Top][All Lists]
Advanced

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

Re: [Chicken-hackers] Pessimizing undefined behavior


From: John Cowan
Subject: Re: [Chicken-hackers] Pessimizing undefined behavior
Date: Tue, 2 Apr 2019 14:05:18 -0400



On Tue, Apr 2, 2019 at 12:10 PM <address@hidden> wrote:
> And it has to be error, not just a warning. Otherwise the warning just
> flashes by while you're getting some coffee.

That's the point - it is an error under your interpretation only. It's
still perfectly legal code, even if it may not make sense.

It's also an error under R5RS, which defines this kind of begin (the
_expression_ type as opposed to the top-level type with mixed
definitions and expressions) as (begin <_expression_-1> <_expression_-2> ...).
See section 4.2.3 of R5RS (same story in R7RS).

That doesn't mean an implementation *can't* assign a meaning to
(begin), but I wouldn't call it "perfectly legal", except in the sense
that (if) or (if #t) are perfectly legal (which are syntax errors in Chicken).

-- 
John Cowan          http://vrici.lojban.org/~cowan        address@hidden
Overhead, without any fuss, the stars were going out.
        --Arthur C. Clarke, "The Nine Billion Names of God"


reply via email to

[Prev in Thread] Current Thread [Next in Thread]