Joachim Durchholz, jo@durchholz.org schrieb:
> GeorgPeter schrieb am 27. Januar 2012 16:13
> > Joachim Durchholz, jo@durchholz.org schrieb:
> > > Wenn MD so funktioniert, dass für jede mögliche Kombination von
> > > Parametertypen eindeutig festgelegt ist, welche Methode gemeint ist,
> > > dann klappt die Sache.
> > > Nur kann man dann die Typhierarchien nicht mehr erweitern. Weil die
> > > Matrix dann nicht mehr überall gefüllt ist.
>Â >
> > Operator overloading und Multiple Dispatch funktionieren in
> > Seed7 nach dem gleichen Mechanismus. Das bestimmen eines
> > überladenen Operators findet zur Übersetzungszeit statt,
> > wärend Multiple Dispatch zur Laufzeit stattfinded. Abgesehen
> > davon unterscheiden sie sich nicht.
> Und genau deshalb sind sie fundamental verschieden.
Nur weil es in allen anderen Sprachen fundamental verschiedene
Konzepte sind?
Meiner Meinung nach vereinheitlicht Seed7 diese zwei Konzepte
in eleganter Weise: Operatorüberladung wird in Seed7 durch
Multiple Dispatch zur Compilezeit aufgelöst. Beziehungsweise:
Multiple Dispatch ist die Auflösung von Operatorüberladungen
zur Laufzeit.
Aber man kann natürlich alles, was nicht ins gewohnte
Denkschema passt, einfach ablehnen. :-)
> > > > Definiert Perl 6 die Priorität eines neuen Operators relativ
> > > > zu anderen Operatoren?
>Â >Â >
>Â >Â >Â Ja.
>Â >Â
> > So etwas wie: Maier ist größer als Müller, aber kleiner als
> > Schmidt? Da ist mir eine Angabe der Größe in cm aber lieber.
[Schnipp]
> Ich hab mich übrigens geirrt, Perl6 hat auch numerische Präzedenzen,
> sie werden nur symbolisch hingeschrieben.
> Was aus dem oben beschriebenen Grund keine allzu gute Idee ist.
Vielleicht kann man ja in Seed7 ja eine Erweiterung schreiben,
die symbolische Präzedenzen erlaubt. :-)
Gruß Georg Peter
> GeorgPeter schrieb am 27. Januar 2012 16:13
> > Joachim Durchholz, jo@durchholz.org schrieb:
> > > Wenn MD so funktioniert, dass für jede mögliche Kombination von
> > > Parametertypen eindeutig festgelegt ist, welche Methode gemeint ist,
> > > dann klappt die Sache.
> > > Nur kann man dann die Typhierarchien nicht mehr erweitern. Weil die
> > > Matrix dann nicht mehr überall gefüllt ist.
>Â >
> > Operator overloading und Multiple Dispatch funktionieren in
> > Seed7 nach dem gleichen Mechanismus. Das bestimmen eines
> > überladenen Operators findet zur Übersetzungszeit statt,
> > wärend Multiple Dispatch zur Laufzeit stattfinded. Abgesehen
> > davon unterscheiden sie sich nicht.
> Und genau deshalb sind sie fundamental verschieden.
Nur weil es in allen anderen Sprachen fundamental verschiedene
Konzepte sind?
Meiner Meinung nach vereinheitlicht Seed7 diese zwei Konzepte
in eleganter Weise: Operatorüberladung wird in Seed7 durch
Multiple Dispatch zur Compilezeit aufgelöst. Beziehungsweise:
Multiple Dispatch ist die Auflösung von Operatorüberladungen
zur Laufzeit.
Aber man kann natürlich alles, was nicht ins gewohnte
Denkschema passt, einfach ablehnen. :-)
> > > > Definiert Perl 6 die Priorität eines neuen Operators relativ
> > > > zu anderen Operatoren?
>Â >Â >
>Â >Â >Â Ja.
>Â >Â
> > So etwas wie: Maier ist größer als Müller, aber kleiner als
> > Schmidt? Da ist mir eine Angabe der Größe in cm aber lieber.
[Schnipp]
> Ich hab mich übrigens geirrt, Perl6 hat auch numerische Präzedenzen,
> sie werden nur symbolisch hingeschrieben.
> Was aus dem oben beschriebenen Grund keine allzu gute Idee ist.
Vielleicht kann man ja in Seed7 ja eine Erweiterung schreiben,
die symbolische Präzedenzen erlaubt. :-)
Gruß Georg Peter