[linux-l] Re: Bridge again

Oliver Bandel oliver at first.in-berlin.de
So Okt 2 15:14:53 CEST 2005


On Sun, Oct 02, 2005 at 01:18:11AM +0200, Volker Grabsch wrote:
> On Mon, Sep 26, 2005 at 10:52:16PM +0200, Oliver Bandel wrote:
> > On Mon, Sep 26, 2005 at 05:49:32PM +0200, Volker Grabsch wrote:
> > [...]
> > > Ein wesentliches Teilproblem ist folgendes: Ich habe eine Hierarchie von
> > > "Typen", womit ich Mengen von Operationen auf gleichartigen Objekten
> > > bezeichne. Diese Typen bilden eine Klassenhierarchie, d.h. man kann
> > > sie aufeinander zurückführen. Als ganz blödes Beispiel steht dort, wie
> > > man einen Integer nachbaut, wenn man nur Strings gegeben hat. (indem
> > > man unicode() bzw. int() beim Setzen bzw. Auslesen aufruft)  ..
> > > natürlich sind diese "Fallbacks" i.A. komplizierter. Das "Backend" kann
> > > sich dann aussuchen, welche Typen (und deren Menge von Operationen),
> > > also kurz: welche Klassen es implementieren will. Dies steht u.U.
> > > erst zur Laufzeit fest.  Das Programm bekommt z.B. eine
> > > Netzwerk-Verbindung von einem Client, der nur Strings und keine Integers
> > > unterstützt. Also nutzt es deren Strings direkt, und für Integers nimmt
> > > er sein Fallback (also die Konvertierungen). Wenn das Backend Integers
> > > kennt, wird das natürlich direkt genommen.
> > 
[...]
> > Wenn eine Seite Int durch Strings emuliert, aber die andere eh nix versteht,
> > was soll das dann?
> 
> Ganz einfach: Der Client kann mit dem Server reden, *obwohl* er nichts
> versteht. Bei mir geht es in der Tat darum, dass der Client universell
> gehalten werden kann, sodass er den Server nur teilweise verstehen
> braucht, und dennoch können sie ordentlich miteinander kommunizieren.


Also es muß doch ein minimales Protokoll geben, das beide kennen.
Es sei denn, Du baust AI-like machine learning nach und der
client oder server muß mithilfe von Neuronalen Netzen erst mal lernen. ;-)


> 
> Wenn der Client z.B. nen Webinterface ist, das eh nur String-Eingabefelder
> kennt, dann kann doch die Konvertierung im Server erfolgen. Der Client
> braucht nichtmal zu wissen, dass es sowas wie Integers überhaupt gibt.
> Der Client sagt dem Server einfach: "Ich kenne nur Strings", und dann
> stellt sich der Server darauf ein.


Naja, das Problem ist doch dann aber nur:
 "Sag mir was Du kannst; kannst Du alles, sprechen wir alles,
  kannst Du nur Bruchstücke, versuche ich das in meine Sprache
  zu übersetzen:"

Klingt irgdendwie nach "kannst Du http 1.1 oder nur 1.0"?

Oder wie: "Kannst Du mit 48.000 Bps connecten oder nur mit 1200?"


> 
> Dieses Konzept wird aber natürlich erst dann sinnvoll und mächtig, wenn
> es auch auf Strukturen, Listen und Referenzen angewendet wird.

Wie bereits per PM erwähnt: möglicherweise passt "Data-Structural Bootstrapping"
als Oberbegriff.
Muß ich mir selbst erst noch rein ziehen. Klingt aber "passend".






> 
> > Bezüglich Datenübertragung im Netz kannste Dir übrigens
> > mal XDR anschauen.
> > 
> > Vielleicht erschlägt das Deine Probleme ja.
> 
> Nö, das nun beiweitem nicht. Aber es ist ein guter Baustein. Nur mal
> so: Wird XDR eigentlich intern bei XML-RPC benutzt?

XDR wird für RPC benutzt.

Was nun XML-RPC sein soll, weiß ich nicht.
Vielleicht ist XML-RPC ja eine Weiterentwicklung von XDR
auf XML-Basis?

Weeß' nich.

Gruß,
   Oliver




Mehr Informationen über die Mailingliste linux-l