If I get a vote, +1/2 from me.

My vote isn't +1 because I'd rather see a syntactic restriction removed: make the inside of a `begin' an internal definition context. Then the change would happen in every similar macro at once.

Also, I could do

    (if <condition>
        (begin (define ...) ...)
        ...)

instead of the current (and very ugly)

    (if <condition>
        (let ()
          (define ...) ...)
        ...)

which I've been doing a lot more now that I can mix internal definitions and expressions.

Would it break much? Would we end up needing a `#%plain-begin' and changing macros that search inner syntax for `begin'?

Neil T

Jos Koot wrote:
+1,
In macro definitions that produce code with bodies, I almost by routine
write (let () etc ...)
There may be a problem including the bodies of begin forms, for they may be
lifted out.
Jos

-----Original Message-----
From: dev-boun...@racket-lang.org [mailto:dev-boun...@racket-lang.org] On Behalf Of Jay McCarthy
Sent: 10 October 2010 22:28
To: Matthias Felleisen
Cc: dev@racket-lang.org
Subject: Re: [racket-dev] `cond' / `when' / `unless' / etc bodies

Ditto.

On Sun, Oct 10, 2010 at 1:36 PM, Matthias Felleisen <matth...@ccs.neu.edu> wrote:
On Oct 10, 2010, at 2:43 PM, Robby Findler wrote:

I too am in favor of when, unless, and cond being
definition contexts.
+1.

I routinely wrap cond/when in let () for just that purpose.
_________________________________________________
 For list-related administrative tasks:
 http://lists.racket-lang.org/listinfo/dev



--
Jay McCarthy <j...@cs.byu.edu>
Assistant Professor / Brigham Young University http://teammccarthy.org/jay

"The glory of God is Intelligence" - D&C 93 _________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev


_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

_________________________________________________
 For list-related administrative tasks:
 http://lists.racket-lang.org/listinfo/dev

Reply via email to