from Wiktionary, Creative Commons Attribution/Share-Alike License
- n. A thinking pattern which determines what information a person takes note of and what information they screen out.
- n. A computer program that writes or manipulates other programs as data, or does the work at runtime that would otherwise be done at compile time.
Sorry, no etymologies found.
As we are running a program that uses an API to generate code, rather than just reading a static description of the code to generate from a file, we can metaprogram, building reusable code-generation tools in the interpreted language so the programmer is not forced to deal with the low-level virtual machine.
Memory management is a small part of the picture, but the real gains in these more dynamic languages come from different areas, particularly from a flexible type model and from the ability to metaprogram.