Subject: More C-like MOO

From: [email-masked] (Barry T. Drake)
Date: Mon, 3 Aug 1992 17:30:12 -0700

Well, I'll probably get chewed for this one, but how about this sticky idea:

Add '++', '+=', '-=', etc.  I know these are C conventions, but why not?
I think they are more readable, but perhaps that is only me.  Just an
idea. :)

bdrake

---

From: Pavel Curtis <[email-masked]>
Date: Fri, 7 Aug 1992 11:22:28 -0700

> Date:	Mon, 3 Aug 1992 17:30:12 -0700
> From:	[email-masked] (Barry T. Drake)
> 

I think, personally, that these bits of syntax would tend to make MOO programs
*harder* to understand, especially for novices, without adding very much in the
way of convenience.  My plans for the syntax, actually, are to try to make it
*less* like C and more like, say, Modula.  For example, I'd like to get rid of
the required parentheses in IF statements and put in instead a required THEN
keyword.  I'd like to replace the cryptic !, &&, and || operators with the
English keywords NOT, AND, and OR.  I'd *love* to get rid of the confusing and
error-prone = and == operators, possibly replacing them by := and the keyword
IS.  I'd use := and =, as in Modula, but I fear that keeping = as a operator
while changing its meaning would be too error-prone for long-time MOOers.

	Pavel/Haakon

---

From: Judy Anderson <[email-masked]>
Date: Fri, 7 Aug 1992 11:54:00 -0700

Date: Fri, 7 Aug 1992 14:22 EDT
    From:	Pavel Curtis <[email-masked]>

    way of convenience.

Mass quantities of seconding Pavel's assertion that ++ etc. are harder
to understand.  Personally, not being much of a C programmer, I hate it
when people use these constructs; the semantics aren't intuitively
obvious and I have to think too much to read their code, unlike more
verbose code which spells out the order in which things happen.

					yduJ

---

From: [email-masked]
Date: Sat, 8 Aug 1992 14:23:25 -0700

From: Pavel Curtis <[email-masked]>
   Original-Sender: Pavel Curtis <[email-masked]>
   Fake-Sender: [email-masked]
   References: <[email-masked]>
   Date: Fri, 7 Aug 1992 11:22:28 PDT
   Sender: pavel <@alpha.xerox.com:[email-masked]>

   > I think they are more readable, but perhaps that is only me.  Just an

   I think, personally, that these bits of syntax would tend to make MOO
   programs *harder* to understand, especially for novices, without adding
   very much in the way of convenience.

I agree with Haakon here. In C these are just shorthand forms, useful only
for making code more concise. IMHO if you're writing an expression that
needs to have these operators for clarity, you should look into breaking it
up into several expressions.

   My plans for the syntax, actually, are to try to make it *less* like C
   and more like, say, Modula. For example, I'd like to get rid of the
   required parentheses in IF statements and put in instead a required
   THEN keyword.  I'd like to replace the cryptic !, &&, and || operators
   with the English keywords NOT, AND, and OR.

Now this, I disagree with. I'm not a great fan of languages (eg. Modula)
that use a lot of English keywords. I do not believe that Modula code
is very much more readable than C to the total novice, while the long,
awkward, verbose syntax makes writing code more of a chore. IMHO it is
difficult *concepts*, and easily-misused operators, that cause newbie
programmers trouble, not whether things are in pseudo-English.

In other words, I think that such changes would only add verbosity, while
not doing much for clarity (since no language can be properly understood
without reading the documentation anyway).

At least MOO, with its case-blindness, wouldn't force these keywords to
be in all UPPER CASE like modula... (I hope!)

   I'd *love* to get rid of the confusing and error-prone = and == 
   operators, possibly replacing them by := and the keyword IS.

Agreed. This is a cause of much unnecessary lossage, and one of C's major
syntax misfeatures.

   I'd use := and =, as in Modula, but I fear that keeping = as a operator
   while changing its meaning would be too error-prone for long-time MOOers.

True. A worthwhile thing to remember: if you have to make something break,
make it break *cleanly*. 

	   Pavel/Haakon

-Morven

-- 
| Matthew J. Brown  | Dept. of Computing | If God intended for us to go to   |
| [email-masked]  | Imperial College,  | lectures He wouldn't have created |
| [email-masked] | 180 Queen's Gate   | double-sided photocopiers.        |
| Morven on Lambda  | LONDON SW7 2AZ     |          -IC RagMag 1991/92       |