[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Macros and Expressivity
- From: "Jeff Wise" <jwise@...>
- Date: Mon, 14 Jan 2008 08:35:44 -0600
Fabien wrote:
>I agree that operating at runtime (RT) rather than compile-time (CT) is
often simpler, that it translates into better maintainability, and that it
is >an excellent reason to prefer RT when applicable. If I understood
correctly, you consider adding/changing some syntactical features in Lua, so
that >many desirable syntax extensions become doable at RT rather than CT.
Although my experience was on another platform, and in another language, the
"better maintainability" idea is arguable.
The project I am referring to was a Y2K conversion I did before the
millennium change. There were lots of lines of code, and several programs
in this application. Fortunately all the date manipulation routines
utilized macros, and by changing just these macros and re-assembling the
programs, I was able to accomplish the task. Without the macro approach, I
would have to search all the modules for the date code, and then implement a
change in each place. Granted, most of the changes would probably have been
very similar, but each change would have been subject to all the foibles of
typos etc. In this case, the presence of macros increased the ease of
maintainability.
I am assuming that if this project had been done in Lua, that all these date
routines would have used functions, and thus the necessary changes would
have been limited to just the functions. My intuition tells me that there
would have been a larger number of functions than macros to handle all the
nuances of the requirements.
CONFIDENTIALITY NOTICE: This E-mail message and all attachments, which originated from Sealy Management Company Inc, are intended solely for the use of the intended recipient or entity and may contain legally privileged and confidential information. If the reader of this message is not the intended recipient, you are hereby notified that any reading, disclosure, dissemination, distribution, copying or other use of this message is strictly prohibited. If you have received this message in error, please notify the sender of the message immediately and delete this message and all attachments, including all copies or backups thereof, from your system. You may also reach us by phone at 205-391-6000. Thank you.