[linux-l] Re: Bridge again

Oliver Bandel oliver at first.in-berlin.de
Mo Sep 26 22:21:28 CEST 2005


On Mon, Sep 26, 2005 at 05:49:32PM +0200, Volker Grabsch wrote:
> On Mon, Sep 26, 2005 at 12:48:23AM +0200, Oliver Bandel wrote:
> > [...]
> > > Damit bestätigt sich meine Vermutung: Das heiß gepriesene Modulsystem
> > > von Ocaml ist letztlich eine Implementierung von Vererbung und
> > > Polymorphie auf Ebene der Module (statt auf Klassen-Ebene).
[...]
> Ich will damit das Modul-System von Ocaml nicht schlecht reden, auf
> keinen Fall!, und auch nichts gegen Funktoren sagen, aber die Konzepte,
> die Möglichkeiten, die Ideen entstammen nunmal den OO-Konzepten, und
> deshalb nenne ich das auch so.


OO kam IMHO recht spät auf die Welt, Strukturierung in Moduln
gab es schon vorher.

OCaml stammt aus der ML-Familie und das sind alles funktionale Sprachen
ohne OO.

Die Herkundt ist eine andere.



> 
> > Aber 1:1 sind diese Konzepte nicht vergleichbar.
> 
> Nicht die Details, das mag sein. Aber wenn wir vom Konzept reden, ist
> das Modul-Konzept von Ocaml eine Umsetzung der Ideen aus dem OO-Konzept.

Sorry, aber das mußt Du belegen, wenn Du hier irgendwelche solcher
historischen behauptungen aufstellst.

Die Modulkonzepte sind funktional und nicht OO.
Sie stammen auch nicht daher.

OO war wohl eher ein neueres Konzept verglichen mit Modul-Sytemen
früherer Sprachen.

Wenn Du mir nahweisen kannst (Links bitte), daß dem nicht so ist,
dann kannste sowas wiedr behaupten.

Aber solche Sachen hier in die Welt zu setzen, ohne Belege, nur weil Du einen
OO-Fokus hast, ist recht einseitig.




> Ich verstehe nicht, wieso es dir so schwer fällt, das anzuerkennen.


Weil ich das für eine Erfindung von Dir halte,
die nicht den Stammbaum der Sprachen korrekt abbildet.

OO wurde ja gerade als Gegensatz zu funktioanlen Sprachen und
klassisch-imperativen Sprachen entwickelt.
So gesehen war das auch wirklich innovativ.




[...]
> > Du willst aber alles durch die OO-Brille sehen, deswegen
> > biegst Du Dir das so zurecht. Aber Modulsystem und OO
> > sind nicht das selbe - beide ERGÄNZEN SICH.
> 
> Ocaml profitiert von dem OO-Einfluss auf Modul-Ebene,

Den Du hier ohne Belege einfach als wahr hin stellst.

Bitte Links, die das belegen.

Danke.

Funktoren sind übrigens Funktionen über Module.
Und dies ist ein rein funktionales Konzept.


[...]
> > > In Ruby werden übrigens Module und Klassen einheitlich behandelt, d.h.
> > > Klassen sind dort lediglich Module mit ein paar mehr Features.
> > 
> > OCaml's OO-System basiert auf dem Modulsystem.
> 
> Ja, eben. Und warum? Weil die OO-Ideen im Kern (alles, was davon
> nicht Daten-abähngig ist) schon im Modulsystem stecken.

Oder anders herum.

> Und deshalb
> kannst du bei allen OO-Patterns, wenn du den Aspekt der "Daten" erstmal
> weglässt, mit dem Modulsystem implementieren. Genau darauf wollte ich
> doch hinaus.

Du stellst es geschichtlich/historisch anders dar.

Belege bitte diese Behauptung.


Was Deine Typen-Sache angeht, ziehe ich mir die vielleicht nachher
 noch zu Gemüte; habe das eben flott überflogen und muß noch überlegen,
was das ganze werden soll.

Bin gerade etwas zu gestresst. Habe in den letzten Tagen auch schon
wieder zu viel vor dem Schirm gehockt. :(


Gruß,
   Oliver



Mehr Informationen über die Mailingliste linux-l