Lably
Skip to content

Reflective programming

Ability of a process to examine and modify itself

  • 36 min read
  • 6 chapters

Related on Lably

Through Computer science, Process (computing) and COBOL

Historical background

The earliest computers were programmed in their native assembly languages, which were inherently reflective, as these original architectures could be programmed by defining instructions as data and using self-modifying code. As the bulk of programming moved to higher-level compiled languages such as ALGOL, COBOL, Fortran, Pascal, and C, this reflective ability largely disappeared until new programming languages with reflection built into their type systems appeared.

Brian Cantwell Smith's 1982 doctoral dissertation introduced the notion of computational reflection in procedural programming languages and the notion of the meta-circular interpreter as a component of 3-Lisp.

Sign in to keep reading

5 more chapters are free with a Lably account.

More in Computing and communication