Folks; It isn't a question of which is better. These languages are tools and you use the right tool for the right job. Which is better, a hammer or a screw driver? They both can tack things together with a third item, a screw or a nail. Can you drive a screw with a hammer, sure, but the results may not be those desired.
Kevin, if you like to see the code all spelled out, there are tools which do a wonderful job of doing exactly that, expand MUMPS code to the full spelling. XINDEX will even structure the code for you. I think what you are objecting to is that MUMPS doesn't force the programmer into one way or the other the way of programming. If you think that MUMPS is bad in this reguard, try APL. Now that language uses the Greek character set for their commands and functions, but boy, is it productive in the hands of someone who has mastered the language. MUMPS is a litterary masterpiece in comparison. Again, though, APL is just a tool. Actually teaching MUMPS is very easy for people who have not written code before, because there is little to no time in between the submission of an action and the feedback of results (no compile an link phase). Now with modern compilers, they have speeded up the process quite a bit and nearly become interpreters, but they aren't there yet. MUMPS is tougher for people who already know another language because they have to unlearn so many of the things they take for granted. Data typing is one major hurtle for them to get past (in MUMPS everything is strings and their meaning is context derived at run-time). Sparse matrixes are another issue in that arrays are more like dendritic sets of items rather than the preallocated arrays. Delay until run-time allocation is another issue which is hard for many to get a handle on. Traditional languages have not handled this one well in the past. Having the database integrated into the language seems very foreign to many traditional programmers. I always felt that the way databases were handled in other languages was like doing brain surgery through a key-hole. I like being able to the actually see what is going on in my database without having to ask another process for permission to see one record at a time. Perhaps the question should be, how can we get MUMPS data structures into these other languages and make them more allocate-at-runtime friendly?? They would be stronger for it. ----- Original Message ----- From: "Kevin Toppenberg" <[EMAIL PROTECTED]> To: <hardhats-members@lists.sourceforge.net> Sent: Monday, August 15, 2005 6:59 AM Subject: [Hardhats-members] Re: Command abbreviations/Re: mpsEdit - IDE for MUMPS GT.M programmers. The only way to "prove" which is better would be to do some sort of controlled study of persons new to M and asking which way is easier to learn. But as a newcomer myself, I think that making M as similar to other languages as possible is desirable. And I don't know of any other modern language that uses single letters for its commands. Beauty is in the eye of the beholder... :-) Kevin On 8/15/05, Gregory Woodhouse <[EMAIL PROTECTED]> wrote: > I suspect that one problem is that since MUMPS is not highly regarded > in some circles, we MUMPS programmers have a tendency to be overly > defensive at times, and respond negatively to suggestions that would > tend to dilute what e perceive as MUMPS' distinctiveness. This is > unfortunate for a number of reasons. One, of course, is that it > doesn't "play well" outside the community. But a more serious issue > is that it stands in the way of properly appreciating what MUMPS has > to offer and, to be honest, it has a tendency to lead us to > (unintentionally, of course) undersell ourselves. > > If I were teaching programming, would I use MUMPS? No. But are there > features of the language that I think could make it valuable both > pedagogically and as a research tool? Yes, absolutely. There are > simply concepts that are both difficult to teach and difficult to use > in languages such as C. I like C very much, and it is a language I > would encourage everyone to learn, but MUMPS includes facilities not > present in languages like C that can be extremely valuable. It is no > accident that dynamic languages like Perl and Python have remained so > popular -- they include language features that have proven to be > extremely valuable in some situations, and the same is true of MUMPS. > === > Gregory Woodhouse > [EMAIL PROTECTED] > > "A practical man is a man who practices the errors of his > forefathers. -- Benjamin Disraeli > > > > ------------------------------------------------------- > SF.Net email is Sponsored by the Better Software Conference & EXPO > September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices > Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA > Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf > _______________________________________________ > Hardhats-members mailing list > Hardhats-members@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/hardhats-members > ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members