Ansicht umschalten
Avatar von
  • unbekannter Benutzer

121 Beiträge seit 27.07.2009

Re: Das Rad wird immer wieder neu erfunden

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

Bewerten
- +
Ansicht umschalten