[r6rs-discuss] Why does begin not have a body?

From: Alan Watson <alan>
Date: Fri Oct 13 16:07:14 2006

The behaviour of begin already depend on its context: if it occurs in a
body, it splices; if it does not, it simply sequences. Why not keep the
splicing behaviour when it occurs in a body, but have begin introduce a
new body when it occurs outside of a body? For example,

   (if #t (begin ...))

would act as

   (if #t (let () ...))

Even if we accept begin as it is currently specified, why do cond and
case clauses have sequences of expressions and not bodies? They can't be
spliced, so the only effect here is to forbid declarations and definitions.

Regards,

Alan
Received on Fri Oct 13 2006 - 16:06:43 UTC

This archive was generated by hypermail 2.3.0 : Wed Oct 23 2024 - 09:15:01 UTC