Talk:MDL (programming language)

From Wikipedia, the free encyclopedia

It's maybe not very nice to say this, but MDL is notable primarily as the first (that I can remember) in the very long line of programming languages that could be described as "Lisp with several different kinds of parentheses".

Somehow "mainstream" programmers think that that main problem with Lisp is that it only has one kind of parentheses -- round ones -- and that this is Very Very Bad. The reason that Java (or Ruby or whatever the flavor of the month is) is better than Lisp is that it has square and squiggly parentheses too.

Obviously, it is MUCH MUCH easier to read

define foo(x, y, z) {
   if [ some_condition ] {
      do_this(x, z);
   } else {
      do_that(y);
   }
}

than

(define foo (x y z)
   (if (some_condition)
       (do_this x z)
       (do_that y)))

as any fool can see.

MDL had square and squiggly brackets, and you had to remember which random kind to use where, which was a Huge Advance on Lisp.

Of course, that meant that you couldn't have Lispy macros, but who needs macros? They are hard to understand because they have no squiggly brackets in them.