Search results
Results from the WOW.Com Content Network
In computer science, reflective programming or reflection is the ability of a process to examine, introspect, and modify its own structure and behavior. [1]
Programming languages and computing platforms that typically support reflective programming (reflection) include dynamically typed languages such as Smalltalk, Perl, PHP, Python, VBScript, and JavaScript. Also the .NET languages are supported and the Maude system of rewriting logic.
Dataflow programming – forced recalculation of formulas when data values change (e.g. spreadsheets) Declarative programming – describes what computation should perform, without specifying detailed state changes c.f. imperative programming (functional and logic programming are major subgroups of declarative programming)
The ability of a programming language to be its own metalanguage allows reflective programming, and is termed reflection. [4] Reflection is a valuable language feature to facilitate metaprogramming. Metaprogramming was popular in the 1970s and 1980s using list processing languages such as Lisp.
Reflective programming languages [ edit ] In the context of programming languages , reification is the process by which a user program or any aspect of a programming language that was implicit in the translated program and the run-time system, are expressed in the language itself.
Symbolic programming techniques such as reflective programming (reflection), which allow a program to refer to itself, might also be considered as a programming paradigm. However, this is compatible with the major paradigms and thus is not a real paradigm in its own right.
Upgrade to a faster, more secure version of a supported browser. It's free and it only takes a few moments:
In computer programming, a mirror is a reflection mechanism that is completely decoupled from the object whose structure is being introspected. This is as opposed to traditional reflection, for example in Java, where one introspects an object using methods from the object itself (e.g. getClass()).