dBASE II has been mentioned a couple of times in this thread. It set me thinking about some of the limitations that we had to work under in those days:
- Only two work areas (primary and secondary). In other words, only two tables (we called them databases in those days) could be open at one time. It's amazing what hoops we had to jump through to live with that restriction.
- The only data types were character, numeric and logical. So, no dates or datetimes, and certainly no binary, floating point, integer, general, etc.
- Strings were limited to 254 characters. So no memos or other ways of storing long pieces of text.
- A maximum of 64 variables at any one time.
- No SEEK command or function. The equivalent was FIND (which is still present in the language). This worked like the SEEK command, except that you had to specify the searched-for terms as a literal. In other words, instead of this:
[tt]lcSearch = "ALKFI"
SEEK lcSearch[/tt]
you had to do this:
[tt]FIND ALFKI[/tt]
Fortunately, we had macros, so that wasn't as big a problem as you might think.
But still, dBASE II was a big advance on its predecessor, which was called Vulcan (and which was never commercially exploited). That had limitations of its own:
- No indexes. All searches were sequential (aka brute force).
- No cursor-positioning commands, such @/SAY. All input and output had to be done via a command-line interface.
I'm sure there were other limitations, but those are the ones I can remember. Perhaps someone will remind me if I've misssd any.
Mike
__________________________________
Mike Lewis (Edinburgh, Scotland)
Visual FoxPro articles, tips and downloads