Polymorphe Typsysteme


Typsysteme:

Typ:

Menge von Werten

Programmiersprachen:

Es gibt monomorphe und polymporphe Programmiersprachen:


monomorphe

polymorphe

Sprachen

jeder Wert gehört zu genau einem Typ

Werte können mehrere Typen haben

Funktionen

Operanden haben nur einen einzigen Typ

Operanden können mehr als einen Typ haben

Beispiel

int add (int a, int b) {

...

}

c = add (2,3);

public Object clone (Object a) {

...

}

clone (Vector...)

clone (Jbutton...)

statisch getypt:

Typ jedes Ausdrucks kann durch statische Programmanalyse, also bereits vor der Ausführung ermittelt werden

streng getypt:

Ausdrücke müssen typkonsistent sein, müssen zur Laufzeit bestimmt werden können


Polymorphismus:

zwei unterschiedliche Arten von Polymorphismus: ad-hoc und universeller Polymorphismus

Schlüsselwörter:

Universelle Quantifikation:

Typoperator:

Inferenz:

Monomorphismus Polymorphismus: