Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search

[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