The ExtendedWindow class
The Pascal bindings to the GUI make it much easier to develop extended versions of the existing GUI items, and extensions to the GUI internals are also being made to make them more flexible for these use cases.
The ExtendedWindow class and others being developed alongside are the staging ground for high-level app behaviour, with partly-automatic filling of menus, easy-to-use dialogs, optional top/bottom/left/right panels in main windows and simplified app lifecycle behaviours. This will not only make development of demo apps easier for me but should begin to make things usable as a streamlined API I can make accessible for other developers.
Other Plans For Pascal
Once the compiler stabilises enough I also hope to make heavy use of Pascal in the build system, meaning that complex & often fragile or inefficient makefiles used in operating system development will gradually be replaced with neat, orderly Pascal code driving other compilers.
This will make it much easier to manage cross-compilation, self-hosting builds, customised debugging or release build processes, complex test cases and other things.
Another bonus is that it should be particularly easy to add a GUI wrapper to the build process, which may make it easier to see which modules and which code or tests are failing. Seeing where the errors are in subprojects can be almost impossible when chaining together build scripts & makefiles, but can probably also be improved by providing summaries in terminal output.
The Origins & Trajectory Of This Project
The Pascal compiler obviously comes from my background in programming, but the design of the system is heavily influenced by my mum’s enthusiasm for spreadsheet software. So the system is designed for business software and was originally built from my prototype spreadsheet app, and I have some specific concepts on the backburner besides just finishing the spreadsheet system…
There Will Still Be Some General Purpose Database & SDK Stuff
My main business plan will probably gradually focus more towards either specific apps or software/hardware distribution channels, but the platform I’ve been developing should also end up being generally pretty good for typical kinds of “database frontend” apps (e.g. government or business record-keeping software) and for online server or client programs.
Leave a Reply