Aktuelle Änderungen Printable View Änderungen Bearbeiten
ObjectOriented > ObjectOrientedness > AutoCompletion > CodeReadability > EleganceMatters > DBSchemaDiffing > DBSchemaDiffs > PythonOnWindows > DebuggingPython > PhilipGreenspun > AikidoYoshinkan > PSPad > ExtendingPython > LexicalClosures > Closures > ClojureOnDotNet > MetaProgrammingClear TrailMetaprogramming is the writing of programs that write or manipulate other programs (or themselves) as their data or that do part of the work that is otherwise done at runtime during compile time. This allows programmers to produce a larger amount of code and get more done in the same amount of time as they would take to write all the code manually.
In a language based upon [our] metaobject protocols, the language implementation itself is structured as an object-oriented program. This allows us to exploit the power of object-oriented programming techniques to to make the language implementation adjustable and flexible. In effect, the resulting implementation does not represent a single point in the overall space of language designs, but an entire region within that space.[1]
Meta-programming is about modifying your kitchen to suit your cooking. [2]