First baby steps toward Generate

Well, I still haven’t quite recovered from the weekend trip to another time zone and the seasonal time change (organized, clearly, by people who think cutting a piece off one end of their blanket and sewing it on to the other will make it longer) at once, so I haven’t been quite up to par coding-wise today. But I did get one important thing done: the first bit of framework for what will become the TableMaster table engine. I can call it from the main program now (even though it doesn’t do much) and put the data where it needs to go. Now it’s just about writing code. Or, more correctly, re-writing the code I wrote over 20 years ago, better.

Those of you who’ve been around since the beginning will probably smile to know that I named the unit, instead of the usual Unit1, Unit2, etc. that all the others are, generate for old times’ sake. TableMaster is just one program now, not GENERATE and TMWIN (or TMDOS, for that matter) but the name lives on in my Delphi unit names. Also, I keep calling it that anyway, so I may as well.

If you’re wondering, yes, I do look at my old code sometimes, mostly for the user interface so I can see how I did something in Delphi, or what some components should do. Generate, not so much — I know what I want it to do, and mostly I’d rather do it better than I did back then. I’m working within different constraints now, and perhaps more important I’m looking back at it in terms of what Generate became, not what it was when I started writing it; many of the features it had were kind of bodged in there because the original design never envisioned them. Variables were a notable example; I never planned on them when I designed the original data structures, so they were always kind of a bag on the side of the table engine. Now I’m rebuilding the program based on the final form it eventually evolved into, rather than how it grew along the way. A fair bit of the code I wrote initially really wasn’t a very good say of implementing the things it did, and honestly, I’m really happy to be fixing it after all these years. TableMaster II is genuinely a version 2, not just an improvement or incremental release of version 1.