lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Let me try that again, from Gmail this time...
----

Back when I used to use C++ a lot, I came up with a creative abuse of
comments to let me decide which of two sections to compile based on
the presence of a single character. I just happened to come up with a
similar construct in Lua as well, and I thought I'd share it. I don't
know if anyone else has come up with it before - it /is/ really simple
- but it occurred to me as I read the section on comments in the  "The
Evolution of Lua" PDF.

--[[
  print("one")
--[=[ <Two-way comment> ]]
  print("two")
--]=]

This construct will only allow print("two") to be executed. By adding
a - to the first comment, the structure 'toggles', and only
print("one") executes. It also just so happens that you can disable
both blocks at once by changing [[ to [=[. Lastly, no matter how it's
toggled, the middle comment has a convenient space for a
human-readable comment.

I'm not sure how useful this would be to anyone else, but I like to
use constructs like this to preserve old code while I'm developing a
newer block.

~Jonathan Castello

On Sat, Feb 13, 2010 at 11:58 PM, Jonathan Castello <solugon@hotmail.com> wrote:
>
> Back when I used to use C++ a lot, I came up with a creative abuse of comments to let me decide which of two sections to compile based on the presence of a single character. I just happened to come up with a similar construct in Lua as well, and I thought I'd share it. I don't know if anyone else has come up with it before - it /is/ really simple - but it occurred to me as I read the section on comments in the  "The Evolution of Lua" PDF.
> --[[  print("one")--[=[ <Two-way comment> ]]  print("two")--]=]
> This construct will only allow print("two") to be executed. By adding a - to the first comment, the structure 'toggles', and only print("one") executes. It also just so happens that you can disable both blocks at once by changing [[ to [=[. Lastly, no matter how it's toggled, the middle comment has a convenient space for a human-readable comment.
> I'm not sure how useful this would be to anyone else, but I like to use constructs like this to preserve old code while I'm developing a newer block.
> ~Jonathan Castello
> _________________________________________________________________
> Your E-mail and More On-the-Go. Get Windows Live Hotmail Free.
> http://clk.atdmt.com/GBL/go/201469229/direct/01/
>