Nachteil von Prozedurtypen

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

*Bei Prozedurtypen gibt es eine wesentliche Einschränkung in Oberon: Es dürfen nur globale Prozeduren an Variablen oder Parameter eines Prozedurtyps zugewiesen oder übergeben werden.
 
*Das bedeutet, daß der Prozedur nur ihre Parameter und globale Variablen zur Verfügung stehen.
 
*Da wir die Sortierprozedur unabhängig von dem zu sortierenden Typ halten wollten, können wir das zu sortierende Array nicht als Parameter übergeben.
 
*Daraus folgt, daß die zu sortierenden Arrays in globalen Variablen untergebracht werden müssen.
 
*Es gibt Programmiersprachen, die auch lokale Prozeduren zulassen. Diese sorgen dann dafür, daß die Umgebung einer lokalen Prozedur auch erhalten bleibt, wenn es eine entsprechende Referenz auf eine lokale Prozedur gibt. Beispiele dafür sind Scheme und Perl.
 
*In Sprachen mit objekt-orientierten Techniken wird das Problem typischerweise anders gelöst. In Oberon geschieht dies durch sogenannte Typ-Erweiterungen. Mehr dazu im nächsten Semester.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 2004, 2005 Andreas Borchert, in HTML konvertiert am 18.02.2005