[racket-dev] 5.0.2 changelog
On Thu, Oct 28, 2010 at 12:29 PM, Eli Barzilay <eli at barzilay.org> wrote:
> Three hours ago, Matthias Felleisen wrote:
>>
>> On Oct 28, 2010, at 8:34 AM, Matthew Flatt wrote:
>> >
>> > None seem especially worth mentioning, but the internal-definition
>> > change could be mentioned if we need more to Say:
>> >
>> > * The `when', `unless', `cond', `case', and `match' forms (in
>> > `racket/base' and derived languages) now allow immediate
>> > internal definitions.
>>
>> Just for the record: allowing internal definitions all over the
>> place and mixing them properly with expressions has been one of the
>> best small changes of the decade.
>
> BTW, there's another one that I think should get the same: `begin0'.
That would be weird. What do these do?
(begin0 (define x 1) x)
(let ([x 0]) (begin0 x (define x 1))
On a different note, is it still important to have `begin0' as a core form?
--
sam th
samth at ccs.neu.edu