MLisp
MLISP is a variant of Lisp with an Algol-like syntax based on M-Expressions, which were the function syntax in the original description of Lisp by John McCarthy. McCarthy's M-expressions were never implemented in an exact form.
MLISP was first implemented for the IBM 360 by Horace Enea and then reimplemented for the PDP 10 by David Canfield Smith. This second implementation also supported a special kind of lambdas, which do not evaluate their arguments. As in Lisp-1 or Scheme, there was a single namespace for variables and functions.
While MLISP was just a preprocessor with an alternative, more reader-friendly syntax for Lisp, the descendant MLISP 2 introduced new concepts:
- interactive interpretation of programs instead of compilation
- extensibility with a syntax description language
- pattern matching
- backtracking by the use of closures on a stack and indices for continuations
M-LISP by Robert Muller is an unrelated language from 1989–1992. It was "a hybrid of M-expression LISP and Scheme".