I disagree with 2-4, slightly.
2. It also existed before lambda--http://en.wikipedia.org/wiki/Ada_Lovelace
3. Alonzo Church & Stephen Cole Kleene only lay the foundations for programming. What about McCarthy who invented Lisp? Or Haskell Curry, who is behind the lambda and functional programming?! OR ALAN TURING?!!!! Or even Ada Lovelace who was rocking it back in the early 1800s.
4. Its a compiler. "A compiler is a computer program (or set of programs) that transforms source code written in a programming language (the source language) into another computer language" -
http://en.wikipedia.org/wiki/CompilerMetaprogramming is slightly different. Its anything that produces, or modifies source code, at /run time/. Compilation happens before run time. A good example would be genetic programming or C macros: #define blah int blah = 10;