2 ms·
We use a business-basic style language called ProvideX[1] from the mid 80s. 99% of our codebase is GOTOs, GOSUBs, and PERFORMs. It's a mess to deal with. But
by Klathmon 11y ago
We use a business-basic style language called ProvideX[1] from the mid 80s.
99% of our codebase is GOTOs, GOSUBs, and PERFORMs. It's a mess to deal with.
But at the same time, the language has a database layer built in that (while slow) works well enough for our uses, it has a GUI toolkit that works cross platform, and you can run the same GUI panel via a web browser through a shim that the company created.
That's the one thing i've never seen anywhere else. I can make a program and GUI, and have it run on windows, linux, osx, and the web without any changes. And the "native" programs can run entirely client side, or they can behave as a "thin client" to a server somewhere, again without any changes.
We haven't moved away because moving away would basically mean replacing every single line of code ever written here... But we are slowly replacing it with more modern languages and systems.
[1]https://en.wikipedia.org/wiki/ProvideX https://en.wikipedia.org/wiki/ProvideX
- threeseed 11y ago> That's the one thing i've never seen anywhere else Xojo - http://www.xojo.com http://www.xojo.com Originally known as RealBasic it has the ability to output native, cross platform apps from a single codebase. Interesting history.
- leshow 11y ago> I can make a program and GUI, and have it run on windows, linux, osx, and the web without any changes. you should check out electron https://github.com/atom/electron https://github.com/atom/electron
- Klathmon 11y agoI'm actually a web developer at heart, and most of my work here is web related as we move away from this system, but electron is only one part of the equation. There is still the database, the "server side" code, and unless we are going with isometric javascript, the client side code separate from the server side. It's just taking some adjustments from a truly monolithic codebase where everything is in one language, one codebase, one "environment", to splitting it up into smaller parts and API-ifying everything to allow an easier separation. It sounds silly, but even choosing an editor is a task, as providex includes their own IDE! (i'm rooting for atom!)