3 ms·
I use a language originally called MUMPS, with the alternate name of M, which is the core language in Cache Object Script. I use it because it has features tha
by whitten 11y ago
I use a language originally called MUMPS, with the alternate name of M, which is the core language in Cache Object Script.
I use it because it has features that are still not (really) included in more "modern" languages, because it is actively used in niche markets, and because I've used it for 34 years, so I have a lot of experience in it and tools written in it.
It is incredibly terse, which allows for use in tight memory situations, and it is high-level enough that the implementor can optimize persistent storage to get speed gains that other languages can only meet by including very low-level code. It has built-in concurrency, again at a high level which allows the implementor a lot of leeway in making things more efficient.
As a niche language, it has specialized uses in Medical Computing and in Financial Computing. Its sparse data structures organized around strings of character is very suited to dynamic data (as a NOSQL datastore) and its handling of transaction processing and concurrency allows retractable computation as well as ACID data storage.
I am proud to call myself a MUMPSter.
- jhallenworld 11y agoThere used to be a company called IDX which sucked in many MIT grads into the world of MUMPS. GE bought them.. do you work for GE?
- ratbeard 11y agoOr Epic healthcare in Madison, that was my first job out of college and continues to grow at an insane rate. MUMPS was a kinda cool language - I liked it a lot better than VB6 which the GUI was written in. Every line had to start with a command like 'set' or 'do', which was abbreviated as 's' or 'd' which looked pretty gnarly. The `for` loop syntax there was a difference between 1 or 2 spaces which after the 'f(or)' :o There was a max file size and filename and function limit of like 6 characters, so things were named pretty cryptically. It had a built in object database and basic array and hash datastructures which were neat though.
- cordite 11y agoI'm there right now. I think the only reasonable alternative would be something like erlang at this time. I see M as still used because it is without fail very predictable in resource usage and behavior, and with certain patterns, not prone to fail or crash. It also can be updated in runtime without having users have to restart or reconnect for most cases. I suggest Erlang, because it has the similar desired behavior for error isolation and predictability.
- epmatsw 11y agoI left there a while back, and I recently tried installing GT.M for old times sake. It's not really any fun without Chronicles unfortunately
- rhizome 11y agoCan't have a mention of MUMPS without the classic: http://thedailywtf.com/articles/A_Case_of_the_MUMPS http://thedailywtf.com/articles/A_Case_of_the_MUMPS
- spdegabrielle 11y agoDon't be embarrassed! The European Space Agency uses cache!
- jsgrahamusxxx 11y agoI have used MUMPS and derivatives for most of 35 years. Although my first company produced library information systems, most of the rest of my employers have used it for medical information systems, and for me that was mostly laboratory information systems. I knew one guy who ran a multi-user system for accounting off of a PC-AT!. Spent 4 years using Fortran on a similar application. I sure missed MUMPS when having to compile programs and having errors caused by moving too many spaces into a variable! I've also dinked around with Forth and Icon/Unicon, which I used to create small programs, one which created Valentine bingo cards and another which I used to transform COBOL screen descriptions from mainframe COBOL to a version which ran on PC's. Sometimes I do wish for a change, but overall I've enjoyed my career. Perhaps someone in the future will feel sorry for those who now work with C++/C#/Python/Ruby/etc. It's provided for me for a long time. Can't complain. And provided me a way to solve problems and get paid for it.
- shoover 11y agoHa good old Cache. I did that for four years out of college. My friends and I couldn't stand the language and couldn't wait to leave it. I realized later that it was ahead of the curve on nosql, but I never heard if InterSystems managed to ride the wave or mostly hangs on with existing business.
- vram22 11y agoIs this Cache the same Cache object database that used to be advertised in mags like DDJ and CUJ?
- shoover 11y agoThat's the one. The database is like kind of like a giant arbitrarily deep hash table of strings and numbers. At some point they added objects to the programming language and made a way load and save them to the database. Voila, object database.