Actually, Chris, it is an error to say that MUMPS is an untyped language. Types are undeclared, and the type associated with a value is context dependent. In

USER>SET X="HELLO"

USER>SET Y=2

USER>WRITE X
HELLO
USER>WRITE X+Y
2
USER>WRITE X
HELLO
USER>

the issue is not one of X having no type, but that the type (and associated value) is determined (at least in principle) at runtime.
===
Gregory Woodhouse
[EMAIL PROTECTED]

"The whole of science is nothing more than a refinement
 of everyday thinking."  -- Albert Einstein


On Aug 15, 2005, at 8:01 AM, Chris Richardson wrote:

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



-------------------------------------------------------
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

Reply via email to