[Home] [By Thread] [By Date] [Recent Entries]

  • From: Rick JELLIFFE <ricko@g...>
  • Date: Tue, 07 Nov 2000 19:54:05 +0800

 
> "Henry S. Thompson" wrote:
 
> > There's a widely-supported assertion in computer science that
> > text-substitution macros are dangerous mechanisms to use to bring
> > extensibility to a language. 

Yes, but it should not be over-rated.  When dealing with variants and
time, many systems end up coming back to text substitution: if the
language does not provide ways to do it then some source code control
system ends up providing it by magic (internal storage of diffs, or
other entity-level issues). 

There is some complexity that it is fruitful to model with general
abstractions, and other complexity is rather arbitrary and is better
handled by a low-level mechanism that at least allows the Job to get
done.  The common phenomenon in C++ was that people continued to use
#ifdef to handle variants (such as different localized versions, or
versions for different platforms) even when using objects: by
partitioning off difficult issues into a low-level mechanism they made
cleaner use of the abstraction mechanism.


Rick Jelliffe

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member