4 ms·
> The problem with having your code all in a software image is that the second you do this you lose a large existing toolset that people have invested a lot in
by quink 14y ago
> The problem with having your code all in a software image is that the second you do this you lose a large existing toolset that people have invested a lot in mastering.
Intersystems Caché.
There's a CACHE.DAT, which sits on the filesystem as a giant monolithic file. It's just a big block device containing a B-tree. In some nodes of that B-tree you'll find binary code. There are specialised tools to manage all this. In other nodes you will find data. There are specialised different tools to manage all this.
There is the one virtual machine and it only runs one language fairly well, called MUMPS. There is an object-oriented addition to it. It's basically a huge bunch of macros that compiles down to... MUMPS.
You can, in a hackish way, sometimes call specific functions from a DLL but that's as far as it gets. However, effectively...
No libraries. At all. And that's the biggest pain.
No libraries. I want you to let that sink in. All those things on Github and SourceForge and everywhere you, simply put, can't use.
No libraries. Except the few that the vendor, Intersystems, chooses to eventually let you have... with often broken functionality. There will never be any UI toolkit or Javascript interpreter or HTML engine or nice XML parser or any of those things. There is a crappy JSON parser, but that's about it in terms of recent niceties, and it's only there because some other customer would have paid for it.
No libraries. And that's the biggest problem with these software image things.
No libraries.
The biggest advance that we managed to get in was installing hooks in the proprietary source code editor (no vim or choice of text editor here) to export and import the code from disk. On save and load. It helped a lot to be able to get all the classes into actual files that we could use SVN with and made things so so much easier.
Software images might be a good idea in theory.
But in practice, you are throwing out your file browser, your text editor, your libraries and everything, everything, else.