M-expression M-expression

M-expression - Definition

M-Expressions are so-called meta-expressions which were intended to be used in Lisp.

S-expressions intended to represent data structures or parsed mathematical expressions look like this:

(+ 4 (- 5 3))

which is simply prefix notation for 4 + (5 - 3). However, in LISP, lists and programming constructs such as a conditional branch are also represented in this way, e.g.

(if (> a 5) dothis orelsedothis)

A representation was developed so that this could be written down in a more user friendly way, for example [1, 2, 3] for a list. These M-expressions were then to be translated to S-expressions to be executed, hence the meta designation.

A few examples of an M-expression and the equivalent S-expression follow.

[1, 2, 3]   (1 2 3)
car[X]      (car X)

However, Lisp programmers quickly adapted to use S-expressions directly for both data and program code, and M-expressions fell into disuse.

Copyright 2009 WordIQ.com - Privacy Policy  :: Terms of Use  :: Contact Us  :: About Us
This article is licensed under the GNU Free Documentation License. It uses material from the this Wikipedia article.