I have read McCarthy's 1960 paper on LISP and found no reference to anything that's similar to user-defined macros or normal order evaluation. I was wondering when marcos first appeared in programming language history (and also in Lisp history):
- When was the idea of user-defined code transformation (before interpretation or compilation) first described (theoretically)?
- What was the first programming language implementation to have Lisp-like macros (by "Lisp-like" I mean "using a readable Turing-complete language to do code-transformation")? (including non-Lisps -- Forth for example is quite old, but I'm not sure if the first Forth implementation already had "IMMEDIATE")
- Also which of those was the first high-level programming language (exclude assembler languages...)
- What was the first Lisp dialect to have macros?
Thank you!