On Sun, Aug 20, 2006 at 03:55:56PM -0600, Luke Palmer wrote: > >The important question here is this one: > > > > - when 'uncommented', is it a no-op? > > > >Which isn't true for #{}/{}, because {} introduces new lexical > >scope.
> Why would you care about introducing a new lexical scope? You would > care about that if you used a variable you declared in the commented > code in the code below it, which is broken. Typically because you have several versions that you want to switch between, and you'd rather add a few characters of comment rather than spend the time rearranging the code to use ifs or subs or something. It's something you might do when debugging or experimenting (especially under time pressure) - at least, that's how I use '#if 0' in C. Using <<'#END' (or rather, q:to'#END') is actually not that bad an idea... it'd work in most places where #{} would give trouble. Unless anybody has any better ideas, that could be a useful idiom to remember.