[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Backquote



As far as I know, Sussman and I invented backquote, around 1973,
as part of Conniver.  However, we were inspired by
Planner/Muddle, which had the convention that lists evaluated to
lists of the values of their elements; function calls were
indicated by angle brackets.  Furthermore, symbols evaluated to
themselves, too.  You had to say ".var" to get the value of var.
Hence what would traditionally be indicated by
    (LIST 'A X (+ I 1))
was in Planner/Muddle written
    (A .X <+ I 1>)
We wrote this as
    !"(A @X @(+ I 1))
(See pp.  85-86 of the Conniver Reference Manual, AI Memo 259a.)
Sussman later changed !"  to ` (prettier and essential once
strings existed), and made it copy as much as possible of its
input (so it was just as efficient as ordinary quote).  (He also
changed "@" to ","; in the original, ,X meant the Conniver value
of X, while @X meant the Lisp value.)

The original Planner/Muddle notation was due to Carl Hewitt and
Chris Reeve.
-------