felix.winkelm...@bevuta.com writes:

>> Another change is considering 'undefined' as a truthy value. The
>> interpreter considers 'undefined' truthy, too.
>
> Undefined is undefined, we shouldn't make any assumption here.

Hi Felix,

When the scrutinizer walks (begin) it knows the returned value is
undefined.

The value or behaviour of (if (begin) 1 #t) is not defined by R5RS.

AFAIK if it's not defined then whatever the implementation chooses to do
is OK.

In this case the whole expression can be therefore optimized to 1.

The scrutinizer does give a warning in any case.

_______________________________________________
Chicken-hackers mailing list
Chicken-hackers@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-hackers

Reply via email to