[REBOL] Re: evaluation result (or... goodbye)
From: greggirwin:mindspring at: 4-May-2002 9:58
In regards to global word limits, and the concept of reusing words, this is
something Bertrand Meyer promotes in the design of Eiffel and its Base
libraries. The goal is not to reduce words usage, but to provide consistent
interfaces.
For example, every dispenser class uses the same method names (add, remove)
rather than having specific names for each type (e.g. a stack would usually
use Push and Pop as method names). This way people learning the library have
a greatly reduced set of terms to deal with and new classes, which conform
to this practice, are easier to understand and learn.
If you look at the built-in REBOL functions, you'll see this in practice for
parameter names (value, block, word, name, etc.). If we follow that
convention, usage is kept in check, at least to some extent.
Sunanda's example, where names are generated dynamically, is obviously a
special case and, as he said, it's a situation that is fixable for his
example app.
In the early days of VB, there were some pretty harsh limits that people
started bumping up against eventually. People didn't complain about the
limits so much (they could be worked around), but they complained loudly
because the limits were "soft". The documentation on exactly what the limits
were, or how you might hit them based on the way stuff was declared, or
*where* it was declared, and what VB did in the background, made it
difficult to know how close you were. Worse, it wouldn't just tell you when
you hit a limit. Your app might run fine...most of the time, but,
occasionally, it would just lose its mind and do some flaky things. Very
scary. I wrote a simple tool that became very popular (VBSpace). All it did
was scan your code and make an educated guess about how close you were to
certain limits. Not 100% scientific, but people could avoid the problems by
playing it a little safe when things got into the questionable area.
To sum up, of *course* I want unlimited space to build big systems. That
said, I can live with the current limits for now, and we know those will be
raised shortly. As long as the rules are laid out, and we know where we
stand, it's not an untenable situation.
--Gregg