Cameron;
Funny you had trouble with RPN. I loved it. It made working woth
complex equations easy because it broke the problem up into manageable
hunks, one or two values and an operator and you got to see the intermediate
result. If the answer looked strange, you could figure out what happened
pretty quick. Working with stacks was fun, even if the HP calculators only
had 4 levels. I wrote an HP calulator simulator in MUMPS that was very
little code and had an infinitely deep stack. Neat tool. I just coded each
key as an entry in a global. The driver just intercepted the keystrokes and
looked up in the table for the function of the key and performed it on the
bottom one or two members of the stack. It was very easy to add new
functionality.
Best wishes; Chris
----- Original Message -----
From: "Cameron Schlehuber" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Tuesday, August 16, 2005 4:24 PM
Subject: RE: [Hardhats-members] MUMPS features
> I was just toying with you ... but in a somewhat serious vein. Indeed
much
> of this discussion revolves around experience and convention. I too have
> enjoyed a number of languages (APL is my all time favorite because when I
> needed to do a lot of matrix manipulation in college it turned labor into
a
> pleasure!) One of the hardest notations for me to absorb was RPN (Reverse
> Polish Notation) on the HP calculators.
>
> But I also like things that are so very simple that I can think about
other
> things instead. And having to remember the precedence of operations, even
> with long established experience, can still get me into trouble sometimes.
> To each his own.
>
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On Behalf Of Greg
> Woodhouse
> Sent: Tuesday, August 16, 2005 4:06 PM
> To: [email protected]
> Subject: RE: [Hardhats-members] MUMPS features
>
> In every single language using infix notation (except MUMPS) that I'm
> familiar with 2 + 3 * 4 = 16, and it is a longstanding convention in
> mathematics that 2 + 3 * 4 is 2 + (3 * 4) not (2 + 3) * 4.
>
> It's not that I can't live with strict left to right evaluation, it's
> just that it's annoying...really annoying. It's as if someone decided
> that they would violate a well established convention just for <insert
> your favorite expletive> of it.
>
> --- Cameron Schlehuber <[EMAIL PROTECTED]> wrote:
>
> > Greg, follow these instructions:
> >
> > First, add 3 to 2.
> > Next, multiply your result times 4.
> > What is your answer?
> >
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED] On Behalf Of
> > Greg
> > Woodhouse
> > Sent: Tuesday, August 16, 2005 1:51 PM
> > To: [email protected]
> > Subject: Re: [Hardhats-members] MUMPS features
> >
> > Hmm...I hesitate to do this, for fear of forgetting something, but my
> > MUMPS "greatest hits" list, includes at least
> >
> > 1. Global arrays
> > 2. Hierarchical arrays in general, and especially the ability to
> > store
> > values at non-leaf nodes.
> > 3. An integrated JOB command and the $J special variable
> > 4. Patterns
> > 5. The MERGE command
> > 6. Built in string handling functions
> > 7. Incremental locks (but see below)
> > 8. Indirection and the XECUTE command (again with some caveats)
> > 9. Simplicity
> >
> > By contrast, my "biggest gripes" list includes
> >
> > 1. Default global scope for variables
> > 2. No static scoping
> > 3. No interprocess communication or asynchronous signaling
> > 4. Weak support for I/O
> > 5. I'm sorry, but 2 + 3 * 4 is NOT 20
> > 6. Unintuitive (and not clearly useful) semantics for reference
> > parameters
> > 7. Incremental locks don't block (like semaphores)
> > 8. No distinction between read and write locks
> > 9. No support for namespaces or packages
> > 10. No flexibility with regard to character sets
> >
> >
> > --- Chris Richardson <[EMAIL PROTECTED]> wrote:
> >
> > > I don't have much easy association with baseball, but;
> > >
> > > 1) the polymorphic Data Representation (for SET X="12 Cats");
> > > A) a string, WRITE X
> > > B) an expression, WRITE X+"15 Dogs"
> > > C) a Truth Value, IF X WRITE "True"
> > > D) has properties, WRITE
> > > %DATA(X)_":"_$LENGTH(X)_":"_$LENGTH(X," ")
> > > (and a lot more)
> > > E) has substrings, WRITE $PIECE(X," ",2)
> > > F) extensible, SET X=X_" and kittens"
> > > G) malible, FOR I=$LENGTH(X):-1:1 WRITE $EXTRACT(X,I)
> > > H thru ZZZ) Lots more
> > > 2) data clustering, for the data created by FOR I=1:1:10 SET
> > > X($R(100))=I
> > > A) Evaluated, WRITE $DATA(X)
> > > B) Walked, SET Y="" FOR S J=$ORDER(X($G(J)) QUIT:J="" WRITE
> > > X(J)_":"_J,!
> > > C) Copied, MERGE Z=X
> > > D) Trimmed, SET J=$ORDER(X("")) KILL:J X(J)
> > > E) Killed, KILL X
> > >
> > > More later.
> > >
> > > ----- Original Message -----
> > > From: "Gregory Woodhouse" <[EMAIL PROTECTED]>
> > > To: <[email protected]>
> > > Sent: Tuesday, August 16, 2005 7:09 AM
> > > Subject: [Hardhats-members] MUMPS features
> > >
> > >
> > > > I've been thinking about the use of strings as a uniform data
> > > > representation in MUMPS and, to draw an analogy with baseball, it
> > > is
> > > > easy to come up with a hit (such as the ability to use the same
> > > > idioms, e.g., $G(X)="" for different kinds of data), or a double
> > > > (such as being able to intermix numbers and strings as subscripts
> > > to
> > > > the same array), but I can't think of a real home run. Thoughts?
> > > >
> > > > ===
> > > > Gregory Woodhouse
> > > > [EMAIL PROTECTED]
> > > >
> > > > "Perfection is achieved, not when there is nothing more to add,
> > but
> > > > when there is nothing left to take away."
> > > > -- Antoine de Saint-Exupery
> > > >
> > > >
> > > >
> > > > -------------------------------------------------------
> > > > 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
> > > > [email protected]
> > > > 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
> > > [email protected]
> > > https://lists.sourceforge.net/lists/listinfo/hardhats-members
> > >
> >
> >
> >
> > ===
> > Gregory Woodhouse <[EMAIL PROTECTED]>
> >
> > "Design quality doesn't ensure success, but design failure can ensure
> > failure."
> >
> > --Kent Beck
> >
> >
> >
> >
> >
> >
> >
> >
> > -------------------------------------------------------
> > 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
> > [email protected]
> > 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
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/hardhats-members
> >
>
>
>
> ===
> Gregory Woodhouse <[EMAIL PROTECTED]>
>
> "Design quality doesn't ensure success, but design failure can ensure
> failure."
>
> --Kent Beck
>
>
>
>
>
>
>
>
> -------------------------------------------------------
> 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
> [email protected]
> 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
> [email protected]
> 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
[email protected]
https://lists.sourceforge.net/lists/listinfo/hardhats-members