First-Class-Objekt

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Ein first-class Objekt (englisch first-class object) bezeichnet in der Programmierung von Computersystemen ein Objekt, das als Übergabeparameter oder Rückgabewert einer Funktion oder Prozedur auftritt bzw. einer Variablen zugewiesen werden kann.[1]

Der Begriff wurde von Christopher Strachey im Kontext “functions as first-class citizens” Mitte der 1960er Jahre geprägt.[2]

Definition[Bearbeiten]

Ein Objekt ist first-class wenn es die folgenden Bedingungen erfüllt:[3][4]

  • es kann in Programmvariablen gespeichert werden
  • es kann als Parameter an Funktionen oder Prozeduren übergeben werden
  • es kann als Rückgabewert von Funktionen dienen
  • es kann zur Laufzeit eines Programms erstellt werden
  • es hat eine eigene Identität (unabhängig vom Namen)

Der Begriff „Objekt“ muss dabei nicht im engeren Sinne ein Objekt einer objektorientierten Programmiersprache verstanden werden. In den meisten Programmiersprachen sind insbesondere die elementaren Datentypen, z. B. Ganzzahl- und Gleitkommaobjekte immer first-class.

Beispiele[Bearbeiten]

Siehe auch[Bearbeiten]

Quellen[Bearbeiten]

  1. Michael Scott: Programming Language Pragmatics. Morgan Kaufmann Publishers, San Francisco, CA 2006.
  2. Rod Burstall, "Christopher Strachey—Understanding Programming Languages", Higher-Order and Symbolic Computation 13:52 (2000)
  3. First Class. C2.com. 25. Januar 2006. Abgerufen am 9. Oktober 2010.
  4. first class object. Catalysoft.com. Abgerufen am 9. Oktober 2010.