John W. Sarkela sarkela at
Mon Feb 24 13:12:52 UTC 2003


I first encountered the term meta-programming in a paper by John Lilly
entitled, "Programming and meta-programming the human biocomputer."
That was a paper about the self taking control of the means of
interpretation of reality.

The prefix meta- when applied to a field of study usually refers to
a new but related discipline designed to deal critically with the
original one.

Thus in the Smalltalk image we find Class and Metaclass.
A class is responsible for describing the structure and
behavior of related instances. A metaclass is responsible
for describing the structure and behavior of a class.

So from this we might infer that metaprogramming is in some
sense a transcendent activitiy. It is the programming of the
means of programming. Look through past OOPSLA proceedings.
I recall an excellent paper by Gregor Kiczales et. al. on the topic.

:-}> John
On Monday, February 24, 2003, at 04:38 AM, Marco Paga wrote:

> Hi everybody.
> I've got just one question. What does the word meta-programming mean. 
> I read the croquet manual to which is an article of Alan Kay added ( 
> Title:  "Is "Software Engineering" an Oxymoron?").
> He writes : " [...] we need a system whose features are "mostly meta". 
> [...] Part of the real problem of today's software is that most 
> programmers have learned to program only a little, at the surface 
> level, and usually in an early bound system. [...]".
> I roamed around the web but the question still remains in my head: 
> "What is it"?
> Thank you
> Marco

More information about the Squeak-dev mailing list