Diskussion:Cyberspace 2009
Aus ThaiWiki
[Bearbeiten] A: Arbeitsteilung
Wir haben uns folgende Arbeitsteilung überlegt:
- Tobias schaut, ob und welche Literatur es zum Thema Kooperation in der Philosophie gibt. (Mir ist dazu die Symphilosophie eingefallen, die nie so wirklich zum Durchbruch kam).
- Hannes dokumentiert die Entwicklung und die Ergebnisse unserer Arbeit / die verschiedenen Versionen,...
- Und Andreas konzentriert sich auf die Interaktion zwischen Platon und Interactive Fiction, die wir ein ganzes Jahr und darüber hinaus versucht haben.
- Über das ganze Jahr hinaus sind wir ja noch nicht, das kommt erst in ein, zwei Wochen :-) Ich habe das so verstanden, daß ich unsere Auseinandersetzungen mit den Möglichkeiten von IF allgemein in den Blick nehme und du bei den Platon-Diskussionen ansetzt (Zusammenhang zwischen den Szenarien und den Politeia-Kapiteln und so).
- Ich hatte nicht vor, den Zusammenhang zwischen den Szenarien und den Platon-Kapiteln zu explizieren, sondern wollte etwas darüber schreiben, wo die Politeia für IF interessant ist und umgekehrt. Aber lass mich das mal weiterspinnen:
- Sicher wär es gut, wenn wir als Beispiel für diese gegenseitige Ergänzung unsere Szenarien beschreiben könnten; im folgenden Sinn:
- 1. Die Politeia eignet sich für IF, weil....<Liste von Eigenschaften der Politeia>
- 2. <Untermenge der Liste von Eigenschaften> findet sich z.B. in Stelle x Diese bildet die Grundlage für Szenario x.
- Ob für diese Liste, die ich finden werde, passende Szenarien existieren, kann ich nicht sagen. Ich könnte Reverse Engineering machen und von den Szenarien auf die Eigenschaften rückschließen, damit sich alles schön ausgeht (also zuerst Schritt 2, dann 1) ;) Es wäre spannend zu sehen, ob man diese durch Reverse Engineering festgestellten Eigenschaften tatsächlich als interessant für eine IF beurteilt (ob Schritt 1 also plausibel ist). Das ist eine Vorgehensweise, wie man folgende Frage beantworten kann: Haben wir die Szenarien so implementiert, dass sich ein Mehrwert für die Lektüre der Politeia ergibt?
- Das war nur ein kleines Gedankenspiel - hab mich davon leiten lassen, wie du meinen Teil verstanden hast (Zusammenhang zwischen Szenarien und Politeia-Kapiteln).
- Die ganze Geschichte brauchen wir glaubich nicht aufrollen, nur einfließen lassen, wo sie relevant wird (wie zum Beispiel bei dir im Zusammenhang mit Objektorientierung das Glaukon-Beispiel.) Ich habe mal ein paar Gedanken von mir aufgeschrieben, die changieren aber auch ein bißchen zwischen Spekulation über Philosophie und IF allgemein und Blick auf die Politeia. Ich hab dabei versucht, gleich auf englisch zu schreiben.
- Ich kann mich auch auf die Präsentation des Spiels konzentrieren, aber dazu muß natürlich erstmal die Rahmenhandlung stehen.
[Bearbeiten] B: Grundsätzliches
Grundsätzlich bin ich dafür, dass wir unsere Arbeit in drei Kapitel/Schwerpunkte strukturieren, von denen jeder einen ausarbeitet und vorträgt. Die Ausarbeitungen sollen nicht völlig unabhängig sein, aber die ersten Impulse und Details kommen von dieser Person. Wichtig ist, dass die Ausarbeitungen für uns alle 3 zugänglich sind und jederzeit kommentiert werden können. Eine These als Einleitung zu jedem Teil könnte unsere Argumentationen strukturieren. (Wir dürfen nicht vergessen, dass wir bereits über 1 Jahr an diesem Thema arbeiten und von daher schon einiges Material und Erfahrung für einen Vortrag haben)
[Bearbeiten] C: Platon und Interactive Fiction (AKA)
Bei den Teil, den ich fürs Erste übernommen habe, geht es um die Interaktion zwischen Platon und Interactive Fiction, die wir ein ganzes Jahr und darüber hinaus versucht haben.
Welche Aspekte von Platons Staat treten dabei stärker heraus, welche weniger stark? Wie kam es dazu? Gerade wenn es um philosophische Schlussfolgerungen geht, sind wir im Begriff etwas zu tun, das in der Philosophie eigentlich nicht zum guten Ton gehört: Empirische Forschung. Man ist versucht durch unser 1-jähriges Experiment, in dem wir Erfahrungen gesammelt haben, Schlüsse zu ziehen auf philosophisch-informatische Fragestellungen. Es wäre übereifrig zu behaupten, wir hätten notwendige Zusammenhänge festgestellt. Vielmehr haben wir erste Hinweise bekommen, wie sich Philosophie und Interactive Fiction miteinander vertragen; wo diese Interaktion also fruchtbar ist und wo nicht. Für eine Theorie, die sich mit dieser Interaktion beschäftigt, reicht unser Experiment meiner Meinung nach noch nicht aus.
Aber was genau macht die Konfrontation der Politeia mit dem Medium Interactive Fiction fruchtbar?
- Dein Fokus liegt, soweit ich das verstanden habe, bisher vor allem auf der Perspektive der Entwickler, denen die Umsetzung als IF natürlich eine ganz andere Form der Auseinandersetzung mit dem philosophischen Text abverlangt. Vielleicht lohnt es, auch die Perspektive der Spielerin einzubringen - hält IF auch für sie ein philosophisches Mehr bereit?
- Die Frage taucht in meinem Brainstorm wieder auf. Vermutung dazu: Die Entwicklerinnen müssen sich bewußt mit der Gestaltung des Code auseinandersetzen, während der Spieler nur das Ergebnis mitbekommt, also sozusagen ein intuitives Gefühl dafür bekommt, wie die Spielwelt funktioniert. Wenn in der Welt Platon codiert ist, kennt sich der Spieler vielleicht nicht ganz aus, was hier los ist, dafür erlebt er, wie sich Platon anfühlt. Der Unterschied zwischen Platon-Lesen und Platon-Spielen wäre einer zwischen intuitiver und diskursiver Erfahrung.
Was mir brainstorm-artig einfällt:
[Bearbeiten] Interdisziplinäre Zusammenarbeit
Schlagwort Interdisziplinäre Zusammenarbeit: Es ist sinnvoll, sowohl als Philosoph als auch als Informatiker responsiv zu sein und seine Arbeiten im Hinblick auf die Kooperation abzustimmen. Wer annimmt, dass man seine philosophischen Ergebnisse nachträglich dem Medium (hier: IF) anpassen kann, dass man sich später immer noch überlegen kann, wie die philosophischen Inhalte in die Form von IF "gepresst" werden können, wird sich einem komplexen Transformationsproblem gegenübersehen.
[Bearbeiten] Überbetonung der philosophischen Komponente
Wir haben zum Beispiel das erste Semester viele Diskussionen zum ersten Buch der Politeia geführt. Diese standen aber in überhaupt keiner Relation zum Medium Interactive Fiction - zumindest haben wir keine diskutiert. Man müsste diese Verbindung erst (mehr oder weniger mühsam) herstellen. Wir haben im üblichen Modus des Philosophierens gearbeitet und haben Buch1 auf klassische Art und Weise kennengelernt.
- Für so ein Vorhaben wäre es wohl das sinnvollste, beim Medium anzusetzen und nach Stories zu suchen, die für das Medium geeignet wären. Das hieße, daß man erst so lange IF übt, bis man Platon mit IF-Augen liest. (Beziehungsweise, daß man überhaupt erst Themenvorschläge sammelt, wenn die Teilnehmerinnen ein bißchen eingearbeitet sind, aber das würde wahrscheinlich genauso ausufern.)
- Wenn man mit dem Ziel antritt, einen bestimmten Text/Aspekt digital zu repräsentieren, ist die Alternative wohl, sich ein Arsenal von Medien zu erarbeiten und nach einem geeigneten zu suchen. Aber das alles sind wohl Tätigkeiten, die über den Rahmen eines zeitlich abgesteckten Projekts hinausgehen.
- Würde nicht sagen, dass man Texte nicht im Rahmen eines Projekts repräsentieren könnte. Ich bemerke jedoch, dass es gar nicht so sehr um die Repräsentation ging, sondern um den philosophischen und technischen Diskurs, den Text zu repräsentieren. Die meiste Zeit ging drauf, sich zu einigen, welche Aspekte man repräsentieren will. In der Philosophie muss man das ja thematisieren und diskutieren, bevor und während man an die Arbeit geht. Dadurch waren wir von Anfang an nicht wirklich in einem Projekt-Rahmen. Das Projekt - das Nach-Vorne-Geworfene hätte impliziert, dass wir wissen, wo wir hinwollen; dass das Ziel fixiert ist. Das war es nicht (oder nur sehr allgemein). Wir haben kontinuierlich - auch in der Endphase - umgebaut.
- Ja, also man hat immer die Möglichkeit, sich den Rahmen eng zu stecken und in dem engen Rahmen schnell und unkompliziert zu arbeiten oder sich den Horizont freizuhalten und sich auch auf Diskurse einzulassen, die so schnell zu keinem, äh, Output führen. Die Philosophie tendiert generell zum zweiten, weil sie sich immer mit den größeren Maßstäben befaßt, und nicht zuletzt deswegen haben auch wir das so gemacht. Das heißt aber auch, daß man aus einzelnen Ideen gleich etwas machen kann und andere erst liegenläßt und viel später darauf zurückkommt. Dem stand der zeitliche Rahmen ein bißchen im Weg, was weniger an dem Aspekt "Projekt" als an dem Aspekt "Seminar" liegt.
- Ich sehe gerade, daß meine Bemerkung eigentlich eine Reaktion auf deinen Hinweis war, wer versucht, seine Ergebnisse nachträglich in IF zu pressen, würde auf Probleme stoßen. Was ich sagen wollte, war, daß man Transformationsprobleme leichter in den Griff kriegen kann, wenn man sich zunächst ins Medium einarbeitet und danach den Text auf Faktoren absucht, die sich zur Umsetzung eignen.
[Bearbeiten] Überbetonung des Codierens
Auch bei dem formalen, informatischen Tätigkeiten ist ein Rückfall in gewohnte Modi des Arbeitens zu entdecken, die sich in dem "Crowd"-Szenario niedergeschlagen haben. Dieser Rückfall war vor allem durch meine Affinität zu Algorithmen getriggert. Einmal damit begonnen (die philosophische Motivation dahinter kann man sicher noch rekonstruieren; sie gelangte aber im Laufe der Entwicklung ins Hintertreffen), hatte ich mir selbst eine Situation geschaffen, in der ich nur noch im Crowd-Szneario programmiert und verfeinert habe, obwohl der Wert für das ganze Projekt verhältnismäßig gering war. Am Ende ist dieser Teil auch ganz aus dem Spiel gefallen. Hier fällt zusammenfassend auf, dass das Medium sofort angenommen und mit Experimenten begonnen wurde, dass aber sehr bald eine Abkopplung zu den philosophischen Motivationen und Überlegungen stattfand. Während des Programmierens ging es nicht mehr darum, philosophische Pointen zu machen, sondern um die formale Optimierung und Erweiterung des Programmcodes.
- Ich denke, das ist nicht ganz das Problem. Auch wenn man ein philosophisch relevantes Modell von etwas implementiert, muß man sich zwischendurch um den Code als Code kümmern, damit das Programm was wird. Das ist ja auch Teil der philosophischen Auseinandersetzung: Wir erarbeiten uns ein funktionierendes Modell des Sachverhalts - wie muß das aussehen?
- So einfach ist das eben nicht. Wir wollten ja nicht nur Sachverhalte implementieren, sondern einen Komplex von Sachverhalten in Abhängigkeit der Aktion des Users (also in einem konditionalen Rahmen). Wenn ich nun ansetze, einen Sachverhalt zu implementieren, aber den ganzen Komplex nicht mehr im Auge habe, fällt der Sachverhalt aus den Rahmen.
- Sauber wäre es, zuerst den Rahmen zu definieren und dann die Sachverhalte zu implementieren. Also klassisch: Zuerst planen, dann ausführen. In einem Medium, das man erst kennen lernt, geht das aber schwer, weil man nicht weiß, wie das Medium reagiert und welche Effekte erzielt werden.
- Ich weiß, ich bin in meiner Terminologie mal wieder recht diffus, aber ich habe hier "Sachverhalt" so verwendet, daß man auch den Komplex als ganzes damit bezeichnen kann. Demnach wäre "das Verhältnis von Gerechtigkeit bei Platon und Verbrechen" etwas, das man modellieren (versuchen) kann, und das Modellieren davon, was eigentlich professionelles Stehlen ist, wäre ein Teilaspekt davon.
- Hier kann man zwischen zwei Faktoren unterscheiden: einerseits über einen teilaspekt das Ganze vergessen, und zweitens über das Codieren die philosophischen Implikationen vergessen. Mein eigentlicher Punkt war, daß es durchaus dazugehört, sich um den Code zu kümmern statt um die philosophischen Pointen. Einen Vorgang in Programmcode implementieren heißt ja sozusagen, eine Vorstellung davon zu entwickeln, nach welchen Regeln dieser Vorgang funktioniert; die Lauffähigkeit des Code gibt Rückmeldungen über die "Lauffähigkeit" des Modells; und den Code debuggen heißt auch seine Vorstellung von dem Vorgang adaptieren. Was natürlich eingeschränkt wird durch das, was du über das Kennenlernen des Mediums gesagt hast. Insofern steckt in dem, was Informatiker so tun, durchaus philosophischer Gehalt.
- Da stimme ich dir zu. Mein Punkt war, dass in Anbetracht des Ganzen jener Teilaspekt der Modellierung von professionellem Stehlen zu viel Raum eingenommen hat, der dann bei der Entwicklung und Verfeinerung der Szenarien gefehlt hat. Als Informatiker wäre ich in der Lage gewesen, den Misstand zu erkennen, der bei der Entwicklung der Szenarien aufgetreten ist. Dieser Missstand war, dass man sich zwar etwas überlegt hat, jedoch wurden diese Überlegungen tlw. dem Medium IF nicht gerecht (z.B. war das Tischler-Szenario einfach nur ein Gespräch, ohne große Überlegung, welche Räume und welche Interaktionen dieses Gespräch umgeben - und das ist ja ein sehr wichtiger Aspekt des Mediums IF). Anstatt das zu thematisieren, habe ich mich auf oben angesprochenen Teilaspekt der Modellierung konzentriert und kann den Missstand nur noch nachträglich beklagen, was wenig konstruktiv ist. Das war meine Erfahrung, von der heraus ich das Auseinandertriften von "Überbetonung der philosophischen Komponente" und "Überbetonen des Codierens" formuliert habe. Bei einer Kooperation sollte dieses Auseinandertriften verhindert werden, indem man sich gegenseitig darauf hinweist, wann etwas zu viel wird.
- Naja, vielleicht lag das Problem weniger in der Konzentration auf die Algorithmen als in der Konzentration auf die Abschnitte, die sich für Algorithmen am besten anbieten. (Ich habe mich dafür mit dem Höhlengleichnis verzettelt, weil das die plastischste Metapher ist.) Allerdings könnte man sich dabei immer fragen, warum gerade diese Stelle sich so gut in das medium einfügt.
- Wenn ich glaube, das funktioniert so oder so, aber dann feststelle, daß das nur mit diesen und jenen Modifikationen implementierbar ist, ist das auch eine Erkenntnis. Das Problem ist wohl eher, daß wir alle zu unabhängig voneinander in verschiedene Richtungen entwickelt haben.
- Ganz genau. Wir haben also - hart gesagt - nicht "wirklich" kooperiert, sondern jedeR hat seine eigenen Dinge verfolgt.
Das waren zwei Beispiele, in denen - in der Philosophie durch das "aufs
Philosophieren stürzen" und in der Informatik durch das "aufs
Programmieren stürzen" - man sich dem Projektkontext nicht völlig
geöffnet hat. Es wurden jeweils nur bestimmte, früher schon erlernte
Aspekte in Angriff genommen.
- Vielleicht kann man die Arbeit an einer philosophischen IF als einen Zirkel verstehen: einerseits muss man inform sprechen und das Medium gut kennen, um bei der Lektüre eines philosophischen Werks Anknüpfungspunkte für eine Umsetzung zu finden, andererseits sollte das Kennenlernen der Programmiersprache bereits unter dem Paradigma philosophischer Ausbeutbarkeit stehen (zumindest da, wo es um mehr als eine bloße Wiedergabe mit anderen Mitteln geht, wo der Verdacht im Raum steht - den wir werden begründen müssen - dass sich so etwas wie ein philosophischer Mehrwert erzielen lässt). Je besser wir die Möglichkeiten des Programms kennen, um so eher werden wir bei der Lektüre auf Umsetzbares stoßen, je vertrauter uns der Text ist, um so eher erschließen sich uns neue, bisher verborgene, ungeahnte Einsatzmöglichkeiten der einzelnen Programmbausteine. Es ist wohl nötig, aus beiden Richtungen zugleich zu arbeiten. Ich sehe deshalb auch kein Problem darin, dass in den einzelnen Phasen des Projektseminars mal der eine, mal der andere Aspekt stärker betont wurde. Wir sind auf dem Prozess ein ganzes Stück weit gekommen (und hätten, wer weiß, vielleicht auch noch weiter kommen können). Dass der zeitliche Rahmen des Projektseminars nicht ausreichen würde, auf diesem prinzipiell unabschließbaren Projekt auch nur zu einem vorläufigen Ergebnis zu kommen, finde ich nur natürlich. Letztendlich kann das Projekt nur eine erste (vielversprechende?) Erfahrung sein, die freilich bereits zumindest Anhaltspunkte zur Beurteilung des Potentials des Mediums bieten sollte.
- Philosophie und Philosophie in einem Medium ist natürlich ein unabschließbares Projekt, aber auch Platon ist irgendwann fertig geworden, ein Buch zu schreiben. Das soll jetzt kein Nörgeln an unserer Arbeit sein, die wir geleistet haben. Natürlich haben wir tlw. sehr sinnvolle Diskussionen geführt und tlw. sehr gute Überlegungen in IF modelliert - ich versuche nur sowas wie "Lessons Learned" herauszuarbeiten, und da kann man mit seiner eigenen Arbeit durchaus kritisch ins Feld ziehen.
[Bearbeiten] Semantic-Media-Wiki-Extension
Ein schönes Beispiel für die zentrale Rolle der Informatik beim Bewältigen unterschiedlicher Kompetenzniveaus war die Semantic-Media-Wiki-Extension von Thai. Die Voraussetzung war, dass unterschiedliche Kompetenzniveaus festgestellt wurden. Die nachfolgende Frage: Wie kann jemand, der nicht programmieren kann oder der Inform7 nicht lernen will, trotzdem etwas dem Projekt dienliches beitragen? Mit dieser Extension war es möglich, dass man durch Such-und Eingabemasken Dialoge verfeinert, Fehler ausbessert, neue Räume oder Gegenstände herstellt, etc. Die Möglichkeit waren - wie das bei grafischen Benutzeroberflächen üblicherweise der Fall ist - eingeschränkt, aber es war ein guter Versuch, das Problem der unterschiedlichen Kompetenzen zu lösen.
Andererseits hat das Tool den Teilnehmerinnen etwas abgenommen, was wichtig war: Den Umgang (und die Frustration) mit dem Medium Interactive Fiction. Der Programmcode [Manche würden sagen, dass es eigentlich englische Sprache ist, wer jedoch viel damit arbeitet und mit Programmiersprachen Erfahrung hat, kann diesem Vergleich nicht so viel abgewinnen... man muss, selbst wenn man Englisch kann, Inform7 (oder Englisch?) als Programmiersprache lernen.] gelangte in den Hintergrund. Viele hatten keine Vorstellung von den Möglichkeiten und Beschränkungen dieses Mediums. Diejenigen, die sich jedoch mit dem Medium konfrontiert haben, sind in ihm versunken und haben nicht bemerkt, dass unterschiedliche Vorstellungen darüber bestehen, was man machen kann und soll. Sogar in der Endphase gab es einige, die das Spiel nicht gespielt haben und gar keine Vorstellung davon hatten, wie man IFs bedient. Meine Frage: Wie können sie dann Szenarien entwickeln, die sich in diesem Medium aufhalten? Das war sicherlich ein Hindernis, das bei der Implementierung der Szenarien eine Rolle gespielt hat. Darauf hätten diejenigen, die mit dem Medium bekannt sind (mich eingeschlossen), früher reagieren müssen.
[Bearbeiten] Platon und Programmierung?
Meine erste These bezüglich Platon ist: "Platon ist an einigen Stellen näher an einem objektorientierten Modell als Interactive Fiction", wenn man unter Objektorientierung alle klassischen OO Merkmale einer Programmiersprache (wie z.B. C++ oder Java) versteht. Das kann ich anhand eines Beispiels zeigen: Glaukon und die Gerechten/Ungerechten (das hab ich vor nem halben Jahr im Tagebuch festgestellt und auch ein Demo dazu implementiert).
- Das ist interessant, wobei man von das aus aber auch weitergehen kann, denn Platon hat ja doch den Anspruch, mit diesem sozusagen objektorientierten Modell (auch) menschliches Verhalten erklären zu können. Man könnte durchaus zu dem Glaukon-Modell eine Story erfinden, die seine Implikationen vorführt. (Unser Problem war eigentlich, daß Glaukons Modell gar nicht das ist, was Platon eigentlich sagen will, und daß die Sache schließlich doch noch komplizierter wird.)
- Heißt das, daß IF weiter von einem objektorientierten Modell weg ist als Platon? Da kann ich nicht ganz zustimmen. Technisch gesehen ist auch IF ein Modell. Eher ist die Zielrichtung bei Platon näher an einem objektorientierten Modell, da er tatsächlich nur ein Regelwerk aufstellen will. IF-Autorinnen sind eher daran interessiert, einen Handlungsverlauf zu implementieren. Das Interessante daran ist, daß das nicht geht. Man kann im Prinzip nur Algorithmen implementieren, die bestimmen, was unter welchen Umständen geschieht, und Objekte sowie ihren Urzustand. Man kann quasi nicht die Requisiten über die Bühne bewegen. Man kann sie nur an ihren Platz stellen und festlegen, wann sie sich bewegen. Man könnte sagen, daß Platon an zeitlos gültigen Gesetzen interessiert ist und an Kategorisierungen - darin ist er sozusagen objektorientiert -, während IF an Individuen und an Geschehnissen interessiert ist. Das Interessante ist, daß IF, um dergleichen als Programmcode zu realisieren, auf eine objektorientierte Struktur zurückgreift.
- Der Orientierung an Individuen und Handlungsabläufen bei IF stimme ich zu.
- Als Informatiker wollt ich erwähnen, dass IF keine saubere Objektorientierung hat (es gibt kein Information Hiding = keine Kapselung;). Beispielsweise haben Objekte bei Inform7 keine Methoden Ich kann nicht sagen, dass dieses Verhalten konkret für diese Klasse/"kind" zutrifft, sondern muss es "draußen" im normalen Programmcode definieren. Was für die Art und Weise, wie IFs aufgebaut sind, sinnvoll ist.
- Ja, so im Detail stimmt das. Ich habe an die Grundlagen gedacht (Objekte sind in einer Hierarchie von Klassen eingeteilt), und da ist Inform *technisch* nicht so viel anders. Man könnte sich (wie du schon andeutest) jetzt im Einzelfall fragen, inwiefern die Abweichungen vom orthodoxen objektorientierten Paradigma zu dem Ziel beitragen, Objekte zu "individualisieren".
- Ich habe die Tage irgendwo etwas darüber gelesen, daß Inform die encapsulation nicht so ernst nimmt, weil I7-Code weniger häufig weitergegeben wird (was es weniger gefährlich macht, an existierenden Klassen herumzupfuschen), aber natürlich finde ich das jetzt nicht mehr. Die Diskussion auf http://groups.google.com/group/rec.arts.int-fiction/browse_frm/thread/a895fe77f3c64647 scheint das aber zu bestätigen.
- Platon dagegen ist konkret an der Glaukon-Stelle
sauberer, weil die Unterscheidung zwischen Schein und Sein an zentraler
Stelle steht. Genau das ist das Grundprinzip des Information Hiding:
- Die Klasse selbst hat eine Methode, mit internen Zuständen. Wie diese Zustände aussehen, weiß nur die Klasse selbst. Andere Klassen können höchstens auf das Ergebnis zugreifen.
- Bei Glaukons Argumentation steht dieses Schema im Vordergrund: Andere Leute sehen von mir nur die Erscheinung; meine inneren Zustände können sie nicht erfassen. Daraus ergeben sich zwei Extrempositionen (a) Eine Person deren inneren Zustände gerecht sind, deren Erscheinung aber ungerecht ist. (b) Eine Person, deren innere Zustände ungerecht sind, deren Erscheinung aber gerecht ist. Glaukon argumentiert, dass (b) vorteilhafter.
- Diese relative Beliebigkeit der Implementierung ist auch die Grundlage dafür, dass die Pointe bei Gyges funktioniert. Bei Gyges wird nur die Randbedingung der Erscheinung völlig weggenommen. Dadurch gibt es nicht einmal mehr die Einschränkung, seine inneren Zustände so einzurichten, dass die Erscheinung vorteilhaft ist. Wenn man unsichtbar ist, kann man alles tun - sogar den König töten.
- Diesen Zusammenhang
verstehe ich nicht. Deine Logik (ich sehe das ja anders) scheint
irgendwie zu sein: wenn ich gerecht scheinen will, dann muss ich
ungerecht sein ("meine inneren Zustände so einrichten, dass die
Erscheinung vorteilhaft ist"). Gyges braucht darauf keine Rücksicht zu
nehmen und kann also auch nach Belieben gerecht sein (und den König
töten)?
- Er kann nach Belieben gerecht oder ungerecht sein. Er kann tun und lassen, was er will.--Andyka 19:53, 15. Nov. 2009 (UTC)
- Wieder auf die Informatik übertragen: Ein unsichtbarer Gyges ist sowas wie eine undokumentierte Klasse. Sie ist in der Welt vorhanden, aber man kann nicht mit ihr interagieren, weil man ihre Erscheinung (ihre Methoden-Namen, ihre Existenz) nicht kennt. Trotzdem kann sie selbst mit der Welt interagieren und verändert sie. Es ist ganz klar (und das ist ja die Pointe), dass sich diese Klasse an keine Implementierungsrichtlinien halten muss, weil auf sie gar nicht zugegriffen werden kann und sich deswegen nach Belieben alle Ressourcen aneignen kann. Sie ist eigentlich ein Fremdkörper... sowas wie ein Geist, der in der Welt herumspukt und irgendwelchen Unfug macht.
- Irgendwie habe ich das
Gefühl, dass hier die Ebenen nicht sauber getrennt werden: ein in der
Welt (im Spiel) unsichtbarer Gyges muss doch nicht auch im Programm
unsichtbar sein.
- Das habe ich auch nicht gemeint. Mit der Einleitung "Wieder auf die Informatik übertragen" frage ich: Was wäre Gyges in einer hierarchischen Ordnung von Objekten, nicht als Gyges, sondern rein strukturell? Wie katastrophal wäre die Existenz eines Gyges? Ich frage nicht: Wie kann ich Gyges in einem Spiel implementieren (denn da ist er ganz normal ein sichtbares Objekt mit Eigenschaften und Fähigkeiten, z.B. Instanz der Klasse Mensch, mit dem Unterschied, dass er einen Ring besitzt, mit dem er seine Eigenschaft, sichtbar zu sein, verändern kann).
- Dann wäre der sichtbare
Gyges ja eine eigene, vom unsichtbaren unabhängige (und dokumentierte)
Klasse. In Wirklichkeit ist Gyges nicht davon suspendiert, sich auch um
seine Erscheinung zu kümmern (weil er ja nicht die ganze Zeit
unsichtbar ist). Er hat nur zusätzliche Möglichkeiten, Dinge zu tun,
die ihm nicht angelastet werden.
- Aber diese zusätzlichen Möglichkeiten bedeuten mehr oder minder den Zusammenbruch einer überschaubaren (sozialen) Ordnung. Die Möglichkeit, ungerecht zu handeln, ist eine zentrale Irritation, mit der Platon in der Politeia umzugehen versucht.
- Aus meiner Sicht hat Platon dieses Problem dann folgendermaßen behandelt: Alle Klassen müssen miteinander abgestimmt sein... dadurch engt sich die Implementierungsfreiheit so ein, dass nur noch innere Zustände erreicht werden können, die gut für das Gesamtsystem sind. Gut geplant ist halb gewonnen. Menschen sind einzelne Methoden in der Klasse Staat, deren Variabilität der inneren Zustände durch die Erziehung stark eingeschränkt ist. Das passt zu dem, was du sagst: "Platon hat [...] den Anspruch, mit diesem [..] objektorientierten Modell [..] menschliches Verhalten erklären zu können" - soweit ich es verstehe.
- "Menschen sind einzelne
Methoden in der Klasse Staat" - wie ist das gemeint? Intuitiv hätte ich
eher gesagt, "Mensch" ist auch eine Klasse und ein Staat beinhaltet
eine Klassenvariable "Bürger", die dann Menschen-Objekte enthält...
Kann eine Methode variable Zustände haben?
- Ja stimmt, da habe ich mich zu metaphorisch ausgedrückt. Ich
wollte den Aspekt der Stabilität des Staates (also der sozialen
Ordnung) herausheben, der durch jene Tätigkeiten entsteht, die Bürger
erfüllen. Eventuell so:
- Staat = Klasse
- Mensch = Klasse
- Staatsbuerger = Array in Staat
- TischlerHugo = Objekt in Staatsbuerger
- bewirtschafteAecker() = Methode der Klasse Staat
- fuehreKrieg() = Methode der Klasse Staat
- Und in den Methoden werden passende Menschen aus dem Staatsbuerger-Array hergenommen, um die Funktionen des Staates (also alles, was für ein Zusammenleben nötig ist) zu erfuellen. Mit meiner verkürzten Schreibweise wollte ich ausdrücken: Für den Staat sind die Leute insofern wichtig, als dass sie die einzelnen Funktionen erfüllen (also brave Bürger sind). Die Handlungsfreiheit der Leute (was ich mit "Variabilität der inneren Zustände" gemeint habe) wird nicht und kann nicht hinreichend modelliert werden. Wenn man im Staatswesen nur diese Perspektive im Blick hat, wird die Erziehung darauf abgestimmt sein, die Bürgerinnen nur zur Ausführung der staatlichen Funktionen auszurichten und Abweichungen als unerwünscht behandeln. Das heißt: Reproduktion des Bestehenden. (Ich würde nicht sagen, dass das verwerflich wäre, aber die Reduktion darauf ist es.).
- Ja stimmt, da habe ich mich zu metaphorisch ausgedrückt. Ich
wollte den Aspekt der Stabilität des Staates (also der sozialen
Ordnung) herausheben, der durch jene Tätigkeiten entsteht, die Bürger
erfüllen. Eventuell so:
- Platon dagegen ist konkret an der Glaukon-Stelle
sauberer, weil die Unterscheidung zwischen Schein und Sein an zentraler
Stelle steht. Genau das ist das Grundprinzip des Information Hiding:
- Also eigentlich hatte ich mich bei dieser Bemerkung verlesen, ich habe zuerst gelesen, Platon wäre näher an Objektorientierung dran als *an* interaktiver Fiktion. Was er ja eigentlich auch sein dürfte. Was mir daran aufgefallen ist, ist, daß er generell den Anspruch stellt, mit seinen allgemeinen und ewigen Wahrheiten auch so individualisierte Vorgänge zu erklären, wie sie in einer IF vorkommen würden. Auf einer Seite stehen Platon und das objektorientierte Paradigma, auf der anderen der Individualismus von IF. (Was auch heißt, daß das Glaukon-Beispiel bisher Platon und Objektorientierung behandelt, der Vergleich mit Inform muß noch dazugedacht werden.)
- Ich bin mir noch nicht ganz im Klaren über die Konsequenz deiner These. Objektorientierte Orientierung, so weit ich das verstanden habe, ist ja dem vorhergehenden Paradigma (dessen Namen ich nicht kenne) nicht dadurch überlegen (falls es das ist), dass es ermöglicht, Dinge zu programmieren, die vorher nicht möglich waren, sondern indem es den Code ganz einfach anders strukturiert, auf eine Weise, die lesbarer ist und Fehlerquellen ausschließen soll. Ganz unabhängig von dem Paradigma, in dem das Spiel programmiert wird, kann es in der Welt, die der Interpreter aus unserem Bauplan erschafft, für die Spielerin eine ganze Menge unsichtbarer Variablen geben, die mit den virtuellen Objekten verknüpft sind, mit denen sie hantiert.
- Auf diese Weise hast du verdammt Recht. Auf der Ebene der Spielerin gibt es einen Haufen von Variablen und Zuständen, die versteckt sind. Wenn man Information Hiding auf diese Weise versteht, dann ist es aber egal, mit welchem Programmierparadigma du arbeitest.... jede Funktion ist für den, der die Funktion aufruft, zunächst ein magisches Rechteck, das Transformationen durchführt. Hier wirkt sich die Unterscheidung zwischen Programierer und User aus, wobei klar ist, dass der User im Normalfall weniger Details sieht als der Programmierer.
- Im Prinzip, so könnte man vielleicht sagen, befindet sich Platon in keiner anderen Situation als unsere Spielerin. Und er versucht, in der etwas komplexeren Schöpfung, in der er sich wiederfindet, auf die gekapselten Variablen der (vielleicht) weniger virtuellen Objekte seiner Umgebung rückzuschließen (und das ist wohl das Geschäft der meisten Philosophen). Polemisch: lässt sich die These nicht darauf reduzieren, dass einerseits inform nicht alle Bestandteile objektorientierter Programmierung implementiert und andererseits Platon deshalb notwendig objektorientiert ist, weil er über die Welt und ihre Objekte spricht?
- Das habe ich so eigentlich noch nicht gesehen. Für Platon ist es das Ziel aller vernunftbegabten Wesen, hinter den Erscheinungen in ihrer Welt den Quellcode aufzudecken. Das wäre ein Ansatz für ein Spiel, das mehr von seiner Erkenntnistheorie ausgeht als von den politischen Aspekten.
[Bearbeiten] Platon als Programmierer?
- Ich sehe Platon in der Rolle des Programmierers, nicht
in der des Users. Er möchte ein für alle Mal eine Konfiguration des
Staates festlegen, damit die User (obwohl sie nicht über alle Details
informiert sind, so wie Platon das ist) gerecht leben. Er wird dabei
selbst zu einem Konstrukteur, wenn man so will. Es hängt - wie HAL?
(bitte signiert die Beiträge) geschrieben hat, wohl damit zusammen,
welchen Aspekt man liest:
- Natürlich geht Platon zunächst von der Situation aus, wie sie zu seiner Zeit vorlag. (In diesem Sinne ist er User)
- Sehr bald aber nimmt er davon Abstand, weil er mit der aktuellen Situation Probleme hat (platt gesagt: Sokrates wurde getötet, da kann doch was nicht stimmen in dieser Welt). Ihm geht es zumindest im Staat nicht so sehr darum, die aktuelle Situation zu analysieren und auf versteckte Variablen draufzukommen, sondern er möchte ganz neu konstruieren. (in diesem Sinne ist er Programmierer)
- Wir selbst sind bei der Entwicklung unseres Spiels in einer ähnlichen Situation (gewesen).
- Wir haben in unserer Welt Platons Buch und seinen Einfluss in unsere Gesellschaft vorliegen und versuchen zu analysieren. (Das ist die Situation eines Lesers oder eines Users)
- Dann sind wir aber außerdem in der Situation, etwas zu Konstruieren... und tatsächlich geht es uns bei den einzelnen Szenarien nicht so sehr darum, Platon genau zu analysieren, sondern etwas zu konstruieren, das einerseits die Platonische Situation darstellt und außerdem unsere Kritik an ihn beinhaltet, anscheinend deswegen, weil wir beim Lesen (ein bisschen unzufrieden) mit ihm waren (platt: Es kann doch nicht sein, dass ein gerechter Staat sich nicht verändern kann und nur einen Herrscher hat, der die Bürger anlügt)
- Die Folgerung, die ich daraus ziehen würde, wäre:
- Einerseits muss man Situationen verstehen und analysieren. Hier verändert man noch nichts. Man ist einfach ein User, der ein Programm nutzt, ein Leser der ein Buch liest, ein Spieler, der ein IF spielt.
- Andererseits wird man mit aktuellen Situationen unzufrieden sein und beginnt, etwas seinen Vorstellungen entsprechend zu konstruieren. Man programmiert ein neues Betriebssystem, schreibt ein Paper über Platon, programmiert ein IF.
- Bei unserem IF wird es nicht anders sein. Jemand, der das Spiel spielt, wird einige Dinge ziemlich unpssend, langweilig oder stümperhaft finden. Daraus könnte man IMHO eine wichtige Konsequenz ziehen: Wir eröffnen der Spielerin die Möglichkeit, mit uns in den Prozess des Konstruierens einzusteigen, indem wir die Quellen veröffentlichen. Das beseitigt die Differenz zwischen User und Programmierer zwar nicht (entweder man spielt in einem vorgegebenen Ablauf oder man konstruiert neue Abläufe mit hinein), aber ermöglicht es Personen, die zunächst in der Rolle des Users zu uns stoßen, ihre Unzufriedenheit nicht durch eine Neukonstruktion, sondern durch direkte Partizipation umzulenken. Dadurch fördert man Innovation und Responsivität an sich ändernde Anforderungen, was bei Closed Source Projekten (Im Platonischen Staat steht die Struktur ein für alle Mal fest) nicht der Fall ist.
- Meine These, dass Platon objektorientierter als IF ist, ist nicht so weitreichend wie der eben skizzierte Gedankengang. Weiß eigentlich nicht mehr ganz genau, warum mir der Unterschied (OO und Inform7) so wichtig war... ich vermute, dass man, wenn man diese These erklären will, ein ganz gutes Verständnis darüber kommt, inwiefern Platon überhaupt etwas mit Objektorientierung zu tun hat und in welcher Lage wir als Entwickler eines Spiels mit I7 dann gekommen sind:
- Ich sehe Platon in der Rolle des Programmierers, nicht
in der des Users. Er möchte ein für alle Mal eine Konfiguration des
Staates festlegen, damit die User (obwohl sie nicht über alle Details
informiert sind, so wie Platon das ist) gerecht leben. Er wird dabei
selbst zu einem Konstrukteur, wenn man so will. Es hängt - wie HAL?
(bitte signiert die Beiträge) geschrieben hat, wohl damit zusammen,
welchen Aspekt man liest:
[Bearbeiten] Warum es wichtig ist zu zeigen, dass Platon und OO zusammenhängen
- Es ist wichtig zu zeigen, dass Platon und OO zusammenhängen, da man so ganz gut in eine Diskussion darüber kommen kann, in welcher Logik das Buch funktioniert und warum das Gyges-Beispiel (und damit zusammenhängend die These von Glaukon und Adeimantos) daher so irritiert. Gerechtigkeit wird als ein einziger stabiler idealer Zustand verstanden. Es wird versucht, dass bekannte Änderungen (Tod und Krankheit von Bürgern des Staates, Geburt) nicht zum Verlassen des Zustands führen. Das passt ganz gut in das OO-Paradigma. Es gibt eine Hierarchie von Objekten. Auch wenn sich bei den einzelnen Objekten Implementierungsdetails ändern (das ist ja die Stärke des Paradigmas), bleibt der Gesamtzusammenhang gleich. Bei einer vorgegebenen Ontologie (die Hierarchie von Klassen ist nichts anderes) sind Änderungen eher schwer möglich... man kann eventuell neue Klassen hinzufügen, aber es ist schwer, bestehende zu verändern, zu entfernen, mit anderen zu verschmelzen, etc... da die ganze Programmstruktur auf dieser Ontologie aufbaut. (Bei Datenbanken ist es ähnlich aufwändig)
- Mit I7 wurden wir gezwungen, mögliche Handlungsabläufe festzulegen, die zwar aus der Ontologie abgeleitet werden können, aber nur mit Zusatzinformationen aus ihr folgen. Erzählungen im Sinne von individuellen Lebensschicksalen fallen außerhalb der eher allgemeinen Festlegungen von Platon und von Objektorientierung.
- Es ist vielleicht nicht zufällig, dass I7 vom strikten OO-Paradigma abgeht, eben damit der Kontakt zwischen Usereingaben und strikten Objekthierarchien überhaupt sinnvoll hergestellt werden kann. Wir haben ja folgende Spannung: Der Aufbau der interaktiven Welt ist direkt zusammengeschaltet mit den Usereingaben, welche ein Spektrum von absoluter Willkür bis zu zielgenauen (vom Walkthrough abgeschauten) Eingaben enthalten kann. Damit am Ziel nahe Formulierungen durch trial und error zu von der strikten Hierarchie modellierten Sachverhalten führen, muss mehr oder weniger hilfreich kommentiert werden. Dem liegt zurgrunde, dass man nicht sofort frustriert ist, wenn für den Spieler sinnvolle Eingaben nur mit "PARSING ERROR! Please enter valid commands" abgelehnt werden.
[Bearbeiten] Warum der Zusammenhang zwischen Platon und OOP trivial ist. Und was daraus folgt.
- Ich
glaube, was mich noch stört, ist der Verdacht, dass das Ganze trivial
ist. Vielleicht könnte man statt "Platon ist der OOP nahe" eher sagen
"OOP ist Platon nahe".
- Die Relation der Nähe ist üblicherweise symmetrisch. Wenn das
Rathaus in der Nähe von der Uni ist, dann ist die Uni in der Nähe vom
Rathaus.
- Damit hast du in Bezug auf raumzeitliche Objekte natürlich recht. Trotzdem ist ein Unterschied, ob ich (jetzt mal vollkommen hypothetisch natürlich) sage "Martin Graf hat eine Nähe zum Nationalsozialismus" oder "der Nationalsozialismus hat eine Nähe zu Martin Graf". Und damit ist nicht allein auf eine zeitliche Aufeinanderfolge angespielt. Vielleicht lässt sich das Obige so reformulieren: "die OOP [weil sie sich an unserer Wahrnehmung der Welt in Form distinkter Objekte orientiert] hat eine Nähe zu den Strukturen der Welt" - es ist zwar vielleicht nicht falsch, deshalb zu sagen, "die Strukturen der Welt haben eine Nähe zur OOP", in der ersten Variante schwingt aber (zumindest für mein Ohr, und auch wenn die Relation Nähe an und für sich symmetrisch ist) das Fundierungsverhältnis, das hier gegeben ist, ein bisschen mit.
- Die Relation der Nähe ist üblicherweise symmetrisch. Wenn das
Rathaus in der Nähe von der Uni ist, dann ist die Uni in der Nähe vom
Rathaus.
- Langsam verstehe ich deinen Einwand. In diesem Fall ist aber
der Begriff der Nähe zu schwach. Deinen Einwand würde der Bild- und
Urbild-Begriff besser zu fassen kriegen, wenn ich es richtig verstanden
habe: Die Objektorientierte Programmierung ist ein Abbild (=Modell) von
den Strukturen der Welt. Dem würde ich auf einer groben Ebene zustimmen
(das ist eine bekannte und zutiefst pragmatische Rechtfertigung, warum
man dieses Paradigma überhaupt verwendet, wie du am Beispiel des Ei's
deutlich gemacht hast. Es reduziert Komplexität). Natürlich fasst man
sich immer jene Aspekte heraus, die man gerade braucht. Ein
Heideggerianer würde die Sache vielleicht anders sehen (Ich vermute,
dass wir eigentlich ganz tief in einer ontologischen Debatte bzw. einer
Kritk der Ontologie stecken, aber ich trau mir nicht zu, das jetzt in
diese Höhe zu heben).
- Wieso ich dieses Fundierungsverhältnis auch im Verhältnis von OOP und Platon zumindest angedeutet sehe? Platon ist in seinem Sprechen über die Welt sozusagen notwendig objektorientiert, während OOP lediglich willkürlich Aspekte unserer Weltwahrnehmung übernimmt, um Code zu strukturieren.
- Mir ging es bei der These zunächst mal um eine Ähnlichkeitsbeziehung ohne festlegen zu wollen, wer von wem die Struktur abgeschaut hat. Du möchtest diese These näher spezifizieren. Frage: Wenn du notwenndig objektorientiert sagst, bedeutet das: Er greift nicht willkürlich einen Einzelaspekt der Welt heraus und strukturiert auf dieser Basis die staatlichen Überlegungen, sondern er erhebt den Anspruch, alle für den Aufbau eines Staates wesentlichen (oh-oh ^^) Aspekte der Welt zu berücksichtigen? Unter Welt verstehen wir: Alles, was IST? Und unter den wesentlichen Aspekten für den Aufbau eines Staates verstehen wir alles, ohne den ein Staat nicht existieren könnte? Oder müssen wir sagen: Ein gerechter Staat?
- Ich
glaube, was mich noch stört, ist der Verdacht, dass das Ganze trivial
ist. Vielleicht könnte man statt "Platon ist der OOP nahe" eher sagen
"OOP ist Platon nahe".
- Und zwar
deshalb, weil OOP versucht, bestimmte Strukturen der Welt in das
Programmierparadigma aufzunehmen. Dass diese Strukturen auch in jedem
Versuch auftauchen werden, die Welt zu erklären, versteht sich von
selbst. Jede generalisierende Aussage über die Welt ist in diesem Sinne
objektorientiert.
- Was meinst mit Strukturen der Welt? Mögliche Interpretationen:
- Ich bilde die Tatsache der Welt, dass Menschen Lebewesen sind, in die Sturktur von Programmen ab. Das setzt voraus, dass es mindestens die Konzepte "Klasse" und "Eigenschaft" gibt.
- oder die Konzepte "Klasse" und "Vererbung" ;)
- Alle Merkmale der Objektorientierung (Information Hiding, Datenkapselung) sind der Struktur der Welt entnommen?
- Würde ich so sagen, ja. Lebewesen, aber auch viele technische Artefakte (und vermutlich sogar noch mehr) begegnen uns als blackboxes, über deren innere Zustände wir nichts sagen können. Am Beispiel eines Eis: wie sich der Zustand seines Inneren beim Aufruf der Methode "Eierkochen" ändert, diese Information bleibt für uns unter der Schale versteckt
- Was meinst mit Strukturen der Welt? Mögliche Interpretationen:
- Und zwar
deshalb, weil OOP versucht, bestimmte Strukturen der Welt in das
Programmierparadigma aufzunehmen. Dass diese Strukturen auch in jedem
Versuch auftauchen werden, die Welt zu erklären, versteht sich von
selbst. Jede generalisierende Aussage über die Welt ist in diesem Sinne
objektorientiert.
- Für mich stellt sich folgende Frage (und das ist die Entfaltung meiner These):
- Angenommen es besteht ein Naheverhältnis zwischen Platon und Objektorientierung (und sei es noch so trivial)
- und weiter angenommen bei der Objektorientierung geht es darum, die Welt auf allgemeine (abstrakte) Weise abzubilden (und lassen wir auch das trivial sein)
- und weiter angenommen Inform7 zeichnet sich von Objektorientierung dadurch aus, dass es viel radikaler mit Abweichungen von idealem Verhalten rechnet als OOP. Genauer: Fehlermeldungen (= ein Antworten auf völlig abstruse Eingaben, aus der Sicht des deterministischen Modells) sind so zentral, dass man dafür vom objektorientierten Paradigma abweicht. Die Abweichung besteht im Detail darin, dass es kein Äquivalent zu den Operationen/Methoden in Inform7 gibt. Das Konzept 'Action' sprengt die glatte Hierachie von Objekten mit Eigenschaften und Tätigkeiten. Der Faktor der Widerwilligkeit wird nicht einfach ignoriert sondern muss (das macht ja Textadventures aus) produktiv verwendet werden.
- Ein paar Bemerkungen dazu:
- Indem mit den Abweichungen gerechnet wird, werden diese zu einem Teil des erwarteten Verhaltens, zu einem Bestandteil des deterministischen Modells.
- Für mich stellt sich folgende Frage (und das ist die Entfaltung meiner These):
Korrekt.
- In welchem Programmierparadigma dieses deterministische Modell umgesetzt wird, ist grundsätzlich egal. Es wäre auch in einer IF-Programmiersprache möglich, die das OOP-Paradigma strenger implementiert (z.B. in Bezug auf die Fehlermeldung: diese wird einfach als Methode der Klasse "thing" implementiert und wird damit an alle Unterklassen vererbt, bei den Klassen, in denen keine Fehlermeldung, sondern eine Aktion ausgelöst werden soll, wird die Methode einfach überschrieben).
Natürlich wäre es möglich, denn allein schon mit prozeduralen Mitteln (also nur mit Hauptprogramm und Unterprogrammen) kannst du alles ausdrücken, was du prinzipiell mit einer Programmiersprache ausdrücken kannst - nur in manchen Fällen umständlicher. Ich möchte mich nicht festnageln, dass da tatäschlich ein notwendiger Zusammenhang zwischen (a) der lockeren Interpretation des OOP-Paradigmas bei Actions und (b) dem Fokus auf die Freiheit des Users besteht, aber ich stelle es mir nicht als rein zufälliges Ereignis vor (um jegliche Sophistereien auszuschließen, müsste man genauer recherchieren, das wäre eine Aufgabe für ein zweites Paper); und ich kann mir auch nicht ganz vorstellen, dass der Grund darin lag, dass IFs normalerweise alleine geschrieben werden, und man deswegen OOP nur so halb implementiert hat. Da wird es use-case-orientierte Überlegungen gegeben haben, d.h. aufgrund des Genres und den Erwartungen, die der User hat, lässt es sich am einfachsten mit dieser Abweichung lösen (und wenn nicht kann man zumindest versuchen nachträglich plausibel zu machen, warum diese Abweichung zustandekam). Meine Vermutung ist wie gesagt, dass die Spannung zwischen der strikten Objekt-/Regelhierarchie und der eher schwammingen, oft daneben liegenden Eingaben der Spielerin diese Vorgehensweise nahelegt. Ein konkretes Objekt tut bei Inform einfach nichts. Die Prozeduren sind strukturell getrennt von den Objekten; die Kapselung ist aufgebrochen. (Eine andere Möglichkeit wäre, dass die Mischung aus Regelbasierten und Objektorientiertem Paradigma zu dieser Mischform geführt hat, dann müsste ich versuchen zu zeigen, warum das Hinzufügen von Regelorientierung eleganter ist als reine OOP).
Gehen wir mal ins Detail zur Buch-Implementierung:
Reading is an action applying to one visible thing.
Hier kann man keine bestimmten Klassen angeben! Darüber haben wir schon mal eine Diskussion geführt und HAL war derjenige, der mir den Vorteil dieses "Mangels" gezeigt hat. Ich habs mal hierher kopiert. Es hängt schon mit dem Fakt zusammen, dass die Spielerin zum Lösen einer Aufgabe Trial und Error verwendet und indem man die Actions von ihrem Bezug auf Klassen herauslöst, kann man auf prozeduralen Weg leichter bestimmte Abfragen einbauen: Wenn der Befehl Lesen zusammen mit einem Buch vorkommt, dann gib den Text der aufgeschlagenen Buchseite aus, wenn mit einem Apfel, dann sag "Bücherwürmer und Würmer in Äpfel sollten dich nicht zum Glauben verleiten, dass man beide genauso lesen kann.", usw. Ich wette, das geht mit standard-OOP auch irgendwie, aber vermutlich nicht so elegant und zentral.
Check reading: if the noun is not a book then say "I cannot read [the noun]. Maybe you should try a book!?" instead; if the noun is not switched on begin; say "(first opening [the noun])[command clarification break]"; try switching on the noun; end if. Carry out reading: Let L be the list of pages which are part of the noun; repeat with item running through L begin; say "At [page side of item] page (#[page number of item]):[line break] [italic type][text of item][roman type][paragraph break]"; end repeat. Report reading: say "To read more, I have to browse.".
- Und noch zu OOP grundsätzlich: du sprichst manchmal so davon, als bestünde der Code nur aus Klassen. Wenn ich mich recht erinnere, ist das zwar in Java beispielsweise tatsächlich so, dass es eine 'main'-Klasse gibt, aber diese besteht üblicherweise aus prozeduralem Code. D.h. um einen Programmablauf zu programmieren muss zumindest ein Objekt instanziiert werden.
- Ich stehe der Instanzierung von Objekten nicht feindlich gegenüber ^^. Das erste Objekt, das instanziert wird, ist aber auch kein irgendwie anderes Objekt, sondern reiht sich natürlich in die Klassenhierarchie ein, indem es zur Kategorie eines der Klassen (evt. "main"-Klasse) gehört. (Wie das bei Java genau ist, weiß ich nicht auswendig, da müsste man sich anschauen, von wem das erste Objekt instanziert wird - wahrscheinlich von der JVM - Java Virtual Machine; das wird langsam religiös.) Oder hab ich deinen Punkt verpasst?
- All diese Annahmen vorausgesetzt: Gibt es auch bei Platon diesen Moment, den Inform charakterisiert? Wenn ja, dann wo? Wenn nein, dann ist er von I7 weiter entfernt als von Objektorientierung.
- Und welche Konsequenz hätte das Verhältnis der Ferne zwischen Platon und I7? Wir erkennen, indem wir die Struktur der Objektorientierung und die Struktur des Mediums I7 untersuchen, dass Platon etwas Entscheidendes fehlt: Das Rechnen mit dem Unvorhergesehenem, mit der Tatsache, dass eine Konstruktion unvollständig sein kann bzw. einfach nicht so genutzt wird, wie der Konstrukteur sich das vorgestellt hat.
- Ohne Platon verteidigen zu wollen bin ich mir nicht sicher, ob dieser Vorwurf wirklich trifft. Wenn alles für immer festgelegt wäre, dann bräuchte es ja eigentlich keine Philosophen-Aristokratie mehr, sondern nur mehr die Wächter, die die festgelegte Ordnung durchsetzen. Platon sagt doch eigentlich: die Philosophen können mit dem Unvorhergesehenen wirkungsvoller umgehen (und diese Idee hat ja beispielsweise auch noch Nietzsche umgetrieben). Das stößt uns gelernten Demokraten sauer auf, kann aber nicht einfach so beiseite geschoben werden.
- Klingt zunächst pausibel. Die Unvorhergesehenheit wäre also durch den/die Philosophen-Herrscher gerettet. Sie haben das Urteilsvermögen und können die Energieflüsse des Staates so steuern, dass er stabil bleibt. Dadurch sind die Philosophen aber selbst ein Rädchen im Getriebe Platons. Die einmal festgelegte Hierarchie ist notwendig und selbst die nachfolgenden Philosophenherrscher werden sie nicht verändern wollen, weil sie die Notwendigkeit einsehen können. Die Urteilskraft der Philosophen ist demnach festgelegt auf einen bestimmten Bereich für den Zweck der Reproduktion der aktuellen (weil idealen) Zustände ("Wer von ihnen fähig ist, die Gesetze und Sitten des Staates zu behüten, den soll man als Hüter bestimmen"-484b). Natürlich könnte man fragen: Warum sollte ich als Philosophenherrscher das System kritisieren und mich selbst absetzen? Das ginge nur dann, wenn er die Notwendigkeit dieser Hierarchie anzweifelt. Und die Notwendigkeit ist fragwürdig, sobald man Zweifel an der Gerechtigkeit dieses Staats hat, die sind aber bei Platon (AFAIK) nicht mehr denkbar, oder thematisiert er, dass die Herrscher selbst Zweifel an der Gerechtigkeit ihres Staates, den sie leiten, haben könnten? Meines Wissens würde dann sowas kommen wie "Denn der Wahrheit zu grollen verbietet die heilige Satzung".(480a) Jener, der daran zweifelt, ist demnach kein Philosoph mehr.
- Dazu vllt. auch noch etwas, weil es mir gerade untergekommen ist: Herrscher sind die Besten der Wächter, also eine Subklasse der Wächter. Und es geht bei der Auswahl der Herrscher doch hauptsächlich darum, dass sie "das höchste Wohl des Staates" verfolgen (413c). Weiters: "Mit ewiger Liebe hängen sie an der Wissenschaft, die sie aufklärt über jenes Sein, das ewig ist und sich nicht wandelt in Werden und Vergehen." (485b) Und wenn ich dann der Reclam-Fußnote7 folge und das Ende des fünften Buches lese, dann fühl ich mich wie in einer Vorlesung über theoretische Informatik. Die vielen Einzeldinge liegen zwischen dem Hellsten Sein und dem Dunkelsten Nicht-Sein. Der Keim der Gemeinsamkeit liegt wohl darin, dass man sich beides auf der Ebene des Idealen abspielt. Ich find das durchaus attraktiv (hier kreuzen sich die philosophischen mit den informatischen Interessen) - aber bedenklich, weil diese Idealität immer ein bestimmter Traumzustand ist, der dann - vorausgesetzt man geht mit den richtigen Ausgangsbedingungen rein - nur in Grenzgebieten interessant wird, jedoch viele Bereiche des Lebens gar nicht trifft, weil sie sich genau zwischen den idealen, herausgearbeiteten Extremen abspielen. So betrachtet ist er auch nur ein Teilaspekt, und gerade nicht das Allumfassende.
- Und weil du anderswo den Aspekt der Stabilität so stark betont hast: klar versucht Platon zu zeigen, wie der Zustand, den er für gerecht hält, aufrecht erhalten werden kann. Allerdings ist er nicht so naiv anzunehmen, dass dies jederzeit gelingen kann - vgl. die Anmerkung in der Reclam-Ausgabe zu 546a (Buch VIII): "allem Werdenden [ist] ein Untergang bestimmt: Was wird, also einen Anfang hat, muss auch vergehen, nur was ohne Anfang ist, bleibt ewig (Phaidr. 245d); etwas modifiziert Tim. 41a: Alles, was zusammengesetzt ist, lässt sich auch wieder auflösen, somit ist nur das Einfache unauflösbar und ewig, ein Gedanke, der im Phaidros zu einem Unsterblichkeitsbeweis der Seele verwendet ist (Kap. 25-34). - Platon ist somit Realist genug, um selbst der realisierten Schöpfung seines vollendeten Staates nicht Ewigkeit zuzuschreiben."
- Das ist ein Einsatz, den man in I7 zwar entdecken kann, jedoch ist er dort noch nicht völlig zur Entfaltung gebracht. Mit der Idee des offenen Quellcodes und kooperativer Zusammenarbeit steigen die Möglichkeiten, die man hat, um Energien der Widerwilligkeit produktiv zu verwenden, anstatt sie als Blockade oder Hacking-Angriff oder Agression gegen die herrschende Klasse zu verstehen.
- Der Gedanke des offenen Quellcodes hebt das Ganze natürlich auf eine neue Ebene, die man gesondert diskutieren müsste. Zu I7 aber noch: ist die Antizipation abweichenden Verhaltens und die Ausgabe einer an die Situation angepassten Fehlermeldung tatsächlich ein produktiver Umgang mit Widerwilligkeit? Erlaubt es der Spielerin ein Ausbrechen aus der Programmlogik? (Und: findet man diese Antizipation von Widerwilligkeit nicht auch bei Platon, wenn er in der Diskussion seines Staatsmodells mögliche Einwände vorwegnimmt und entkräftet?)
- Das soll nicht als Vorwurf gegen Platon verstanden werden (eher als Kritik an seine Konzeption) und falls doch, dann wird er, der 2500 Jahre mit sehr vielfältiger Kritik beladen wurde, es auch verkraften. Ich sehe jedoch auch keinen Grund, bei Platons Staatskonzeption stehen zu bleiben oder sie gar zu verteidigen. Der Ansatzpunkt: Was ist Gerechtigkeit und warum ist sie erstrebenswert, der sehr eng mit der Frage nach Sinn und Aufgabe des Lebens (in einer Gemeinschaft) zusammenhängt, ist legitim (welcher Philosoph würde das bestreiten?), doch warum sollten wir in der Beantwortung der Frage bei Platon stehen bleiben?
[Bearbeiten] Platon analysiert die Invarianten menschlicher/sozialer Verfasstheit und ist mehr User als Programmierer
- Zwar kann
man sagen, Platon konstruiere einen Staat, aber diese Konstruktion ist
ja alles andere als willkürlich, sondern verläuft streng argumentierend
entlang einer Analyse der menschlichen Konstitution.
- Ich bestreite nicht, dass Platon argumentativ vorgeht. Aber willst du damit sagen, dass Programmierung willkürlich ist oder warum sagst du das? Denn: Wenn ich ein Programm zur Verwaltung von Hotels schreibe, dann erstelle ich die darunter liegende Ontologie (oder die Datenbank) hinsichtlich des Zwecks, den das Programm erfüllen soll und hinsichtlich der Struktur der Welt, von der ich mir ein vereinfachtes Bild gemacht habe. Für jede Konstruktion in der Ontologie kann ich argumentieren, warum sie zum Zweck beiträgt und warum sie der Struktur der Welt entspricht.
- Platons Anspruch ist sogar noch stärker: Der Zweck seiner Konstruktion ist nicht irgend ein Zweck, sondern jener, der den Menschen erst ihren Sinn und ihren Ort im sozialen Gefüge zeigt.
- Zu entlarven, dass dieses Vorgehen einem Vorgehen gleicht, das man heute in der Objektorientierung kennt und das man gerne als triviales Handwerkzeug betrachtet und zu entlarven, in welchem Aspekt sich OOP von Inform7 unterscheidet (siehe oben), obwohl es wie OOP (und Platon, wo du ja zustimmst) mit abstrakten Konzepten arbeitet, scheint mir nicht trivial. Es ist nur ein kleiner Unterschied, aber ich hoffe vorhin etwas besser gezeigt zu haben, dass man diesen Unterschied ausbauen und dadurch mehr in Richtung offener Quellen gehen kann.
- Zwar kann
man sagen, Platon konstruiere einen Staat, aber diese Konstruktion ist
ja alles andere als willkürlich, sondern verläuft streng argumentierend
entlang einer Analyse der menschlichen Konstitution.
- Meiner
Meinung nach liegt deshalb der Schwerpunkt schon auf der User-Seite
deiner Dichotomie: Platon analysiert zwar nicht den Ist-Zustand seiner
Zeit, wohl aber die Invarianten menschlicher/sozialer Verfasstheit.
- Mag sein, dass er die Invarianten menschlicher und sozialer Verfasstheit zu analysieren meint, jedoch vergisst er die Wichtigkeit (auch) der Varianzen für ein gemeinsames Zusammenleben. Das Prinzip der Arbeitsteilung, das er für so sinnvoll hält, ist noch immer ein Grundzug unserer Gesellschaft, das in Ansätzen bis zu Luhmanns Systemtheorie erkennbar ist, wo es Systeme und nicht Menschen sind, die Verantwortungsbereiche inne haben. Dass mir die Varianzen fehlen (die man ja schwer in Allgemeinheiten ausdrücken kann), heißt: Ich bin mit dem Modus/der Ausführung der Analyse nicht einverstanden und das sind Aspekte, die mehr der Programmier-Ebene zuzurechnen sind. Ich kann Platon nicht vorwerfen, dass er bestimmte Dinge intuitiv so und so wahrgenommen hat, aber ich kann das, was er daraus gemacht hat (den Text, Platons Staat) kritisieren, rearrangieren, Teile davon verweren oder neu implementieren. (Es kann sein, dass er über die interessanten Sachen nicht geschrieben, sondern nur gesprochen hat, wie man oft sagt. Aber darüber zu rätseln, was jemand vor 2500 Jahren gesagt hat, sodass dadurch die Schwächen des Vorliegenden kaschiert werden, ist müßiger als Re-Engineering) Wir arbeiten am Projekt Gerechtigkeit (wie an den Szenarien der Geisterbahn) - und nicht - Wir schließen Gerechtigkeit ab und lassen die Leute nur mehr aus der User-Sicht draufschauen, den Quellcode aber behalten wir für uns, damit wir mit unserer These, dass ein solcher Staat ewig besteht, Recht behalten. Bei der Politeia haben wir die Möglichkeit, den Staatsentwurf zu analysieren, zu zerlegen oder zu unterstreichen, da uns Quellen vorliegen.
- Meiner
Meinung nach liegt deshalb der Schwerpunkt schon auf der User-Seite
deiner Dichotomie: Platon analysiert zwar nicht den Ist-Zustand seiner
Zeit, wohl aber die Invarianten menschlicher/sozialer Verfasstheit.
Und übrigens: In Paul Thagards ersten Versuchen, die Motivation zur wissenschaftlichen Kollaboration mit einer epistemischen Kosten-Nutzen-Analyse zu begründen, findet sich auf der Kostenseite unter anderem: der Aufwand der (vor allem natürlich in interdisziplinären Kooperationen) betrieben werden muss, um sich erst einmal auf eine gemeinsame Sprache und ein gemeinsames Verständnis des Untersuchungsgegenstandes zu einigen. Ich würde ihm widersprechen, und diese grundlegenden Diskussionen ganz klar auf der Nutzen-Seite ansiedeln. Auch wenn sie vielleicht keinen direkten Nutzen für das Ergebnis bringen, schulen sie das Vermögen, sich verständlich zu machen und helfen dabei, sich über den eigenen Standpunkt klar zu werden.
- Klingt nach einem Schlussstatement. ^^ Bezüglich dem gemeinsamen Verständnis stimme ich dir vollends zu. Diese Art von Auseinandersetzung ist ein ganz großer Nutzen, wenngleich er mit viel Geduld und Fairness von allen Beteiligten geführt werden muss.
[Bearbeiten] Dialogform
Natürlich kann man behaupten, dass sich das Werk aufgrund seiner Dialogform leichter in Inform7 einbauen lässt, beim Näheren hinsehen ist es wahrscheinlich genauso schwer wie bei anderen Werken... Platon ist ja eigentlich provokant. Er konstruiert Dialoge, in denen er vortäuscht, dass es einen zweiten Gesprächspartner gibt... diese Rolle ist aber von ihm programmiert.. ein Ja-Sager oder einer, der diejenigen Einwände einbringt, die er selbst im Sinn hatte. Vom Gesprächspartner wird er nicht überrascht. Indem wir diese Provokation sehen und den fingierten Dialog zerlegen... sind wir - wenn wir eine InteractiveFiction machen in einer ähnlichen Situation wie Platon... Der Plot, den wir uns überlegt haben (um Platon aufzumachen), sollte sinnvolleweise vom Spieler bejaht werden... die Einwände sind selbst Bejahungen des Plots.
- Ich glaube, daß die Dialogform gar nicht so Inform7-optimiert ist. Die eigentliche Stärke von Inform liegt ja in Regelsystemen zur Manipulation von Objekten. Dialoge sind in der Grundausstattung gar nicht enthalten, sondern müssen mit Erweiterungen nachprogrammiert werden. Wir haben glaube ich schon im ersten Semester darüber geredet, daß das mehr etwas für einen Chatbot wäre (und mein Hauptbeitrag im ersten Semester handelte hauptsächlich davon, gegen den Dialog das Prinzip einer parabelhaften Geschichte zu positionieren).
- Allerdings hätten wir bei einem Chatbot auch die selben Probleme mit dem Dialog. Einen Ablauf kann man so nicht programmieren, nur einen Rahmen abstecken, in dem sich das Gespräch bewegen kann.
- Bei Merleau-Ponty gibt es sehr emphatische Beschreibungen eines gelungenen Gesprächs, wo die Gesprächspartner einander befruchten, im Sprechen Neues entdecken und erdenken und am Ende nicht gesagt werden kann, wer was dazu beigetragen hat. Ein solches Gespräch kann es mit einem Buch nur in sehr abgeschwächter Form geben und vielleicht war es die Erfahrung solcher Gespräche, die Platon veranlasst hat, zur Form des Dialogs zu greifen und der Schrift insgesamt sehr skeptisch gegenüberzustehen. Ich glaube schon, dass IF bei der Simulation eines gelungenen Gesprächs einen Vorteil gegenüber dem bloß linear verschriftlichten Dialog hat. Natürlich sind die Interaktionsmöglichkeiten begrenzt und vor allem der Autor verpasst, wie auch beim platonischen Dialog, die Möglichkeit, sich von der Spielerin/Leserin befruchten zu lassen, dennoch ermöglicht es bei entsprechender Implementierung der Spielerin, bei Unklarheiten nachzufragen, Teile zu überspringen oder in andere Richtungen weiterzufragen, etc. Aber Hannes hat natürlich recht, dass Dialoge nicht das einzige und vor allem nicht das wichtigste Feature von IF sind. Und es ist schade, dass die Parabel-Experimente in der Diskussion leider etwas untergegangen sind, wie mir scheint.
- Das Problem ist auch, daß Platon dafür weniger hergibt, als man zunächst glauben möchte, jedenfalls in den Passagen, die wir gelesen haben. Das einzige Mal, wo er wirklich eine Geschichte erzählt, ist Gyges - was dann auch prompt ein Angelpunkt für unsere Entwürfe wurde.
[Bearbeiten] Entwurf Entwürfe Notizen für Brno (Hannes)
Für den Einstieg kopiere ich nochmal meinen Entwurf des Abstract rein:
The question whether philosophical ideas can be expressed in narrative texts has been discussed since the very beginnings of European tradition philosophy, and many times have thinkers attempted to shape philosophical essays as works of fiction. The emergence of digital media has brought new possibilities of managing text that have not yet been examined extensively in this respect. One of them is interactive fiction (IF). A work of IF is a piece of software modeling a narrative the user can engage with. Thus, an IF is at once a fictional scenario and a modeled world built upon a set of rules specific enough to be expressed in programmed code, which enables authors to express ideas on various levels. In 2008/09 a working group at the University of Vienna / Dept. of philosophy has studied the possibilities of IF by attempting to implement results of their discussion of Platon's Republic in an IF written in the programming language Inform7. This also meant writing in a collaborative process, whicht is untypical for IF. This talk will present the result of our work and the experiences gained in the process.
Schlüsselsatz: An IF is at once a narrative and a piece of program code.
An interactive fiction is basically a narrative, so to implement philosophy in it one has to look out for trains of thought that can suitably be expressed in story... As philosophical thoughts tend to be rather abstract, the task is to find relations between abstact thoughts and physical proceedings...
--
The kind of implementation Plato appears to call for is a political strategy / simulation game, such as Civilization. The Republic is about an entire society, looked upon from bird's eye view. Inform's strength, however, lies in conveying to the player the experiences of the player character, that is, of an individual moving through a world. The suitabel viewpoint is not that of the Civilisation player looking down on her people, but that of one of the citizens running through the streets. Not that this hasn't been done before. A novel like 1984 portrays a society by detailing its impact on the (exemplary) individual – and it does so while strictly sticking to the subjective viewpoint IF is tied to. (But not without resorting to an in-text essay explaining the bigger picture.) However, to implement the Republic in IF, it first has to be translated from omniscient to limited point of view, so to say. This is difficult because of Plato's focus on things such as individual sacrifices in favour of the greater good, which makes it somewhat necessary to have the bigger picture as a key part of the player's experience rather than just an explanatory digression.
- Gerade das ist es, was den oben erwähnten Ansatz vom Erkenntnisthema her so interessant für eine Platon-IF macht, denn wenn es ein Szenario gibt, das die Auseinandersetzung des Individuums mit der Beschaffenheit der Welt vermittelt und das zugleich urplatonisch ist, dann ist es dieses Hinterfragen der Erscheinungen. Ich fürchte, damit sind wir schon wieder bei der Höhle. Vielleicht könnte man sich an dieser Stelle fragen, ob das Höhlengleichnis etwas ist, das nicht nur Platon, sondern auch Computerspielen inhärent ist.
IF seems to be the perfect expression for thoughts concerning philosophy of the individual, for a certain kind of philosophical musings concerned with the individual and its interactions with the world and how they are formed by the way the world works. IF actually presents us with an individual (the player character) interacting with a system of rules.
The thing is that you can implement a world according to some philosophical theory but that this won't tell the user about the world...
Ad hoc I can see two kinds of distinctions between kinds of relations between concrete and abstract concepts. First, something one may call metaphor vs example. Metaphor meaning that one thing represents another thing that is not itself, e.g. the sun represents knowledge. (The sun is an accumulation of matter with enough mass to cause nuclear fusion. Knowledge is not. Although, come to think of it, accumulating particles until they begin to fuse and start a chain reaction is not that bad a description for cognition.) Example meaning, so to say, that the image is what it represents. Escaping from a dungeon to, say, a deserted mountainscape where persecutors cannot find one not only represents escape from an oppressive situation, it is itself an instance of escape from an oppressive situation. (A part of good storytelling may be to fuse both. When I escape from a dark dungeon to a sunny mountainside, the transition from dungeon to mountain may be an example while the transition from dark to light may be a metaphor.)
But I degress. Perhaps the more important distinction is between what I might call a model and a simulation. The aim of a model is to be examined and understood by recipients. When I want to implement a model of nuclear fusion in IF, I have to do it in a way that enables the player to identify a hydrogen atom. The aim of a simulation is to produce a realistic effect, without the user necessarily knowing why. In a 3d video game, a realistic simulation of the light is part of the experience, but that doesn't mean that the player reflects on lighting. If one wants to deal with that, one has to have a look at the code. The philosophical reflection, so to say, is on the side of the developers.
- (As I said before - for the developer it's a model, for the player it's a simulation.)
The classic way to combine both would be to have the player interact with the simulation in a way that encourages her to try to predict its reactions. That provides something of an intuitive understanding of the situation, or better: the player knows how the simulation behaves, but without necessarily understanding the underlying structures. It isn't guaranteed that she interprets correctly what she experiences, and the question is whether we as philosophers can stand that. The worst case would be just drill. The player learns that the harp is good and the flute is bad, without ever knowing why.
Or: A model gives the player discursive knowledge about the subject, a simulation gives intuitive knowledge. The ideal IF would possibly do both, that is, implement the world in a certain why and tell the player how the world is implemented. (That could be done rather elegantly when the lecture about the world is necessary to learn about the right course of action.)
(The matrix is a room. The red pill is an edible thing in the matrix. The blue pill is an edible thing in the matrix. After eating the red pill: end the game in death. After eating the blue pill: end the game in victory. The player carries a green note. The description is „'Red represents cosiness. Blue represents hardening.'“ The player carries a yellow note. The description is „'hardening is good.'““)
- (The problem with this sketch, of course, is that it is completely arbitrary. That the notes tell you correctly which one is the good pill just is the case because the author happens to be so nice. In order to merge the "model" and "simulation" factors you'd have to let all variables interact in a way so that the the very same piece of code determining that the note says "blue is good" also determines that blue really is good. Which would mean a world so well-adjusted that it is impossible to lie.)
[Bearbeiten] Notizen für Brünn (AKA)
Damit ich es nicht vergesse, möchte ich mir meine These und die Konsequenzen daraus notieren.
[Bearbeiten] Rahmen (der das Umfeld beschreibt)
- Der Rahmen unseres Vorhabens war: Platons "Der Staat" zu lesen und den Prozess der Auseinandersetzung nicht in ein Paper, sondern eine gemeinschaftlich erstellte IF zu bringen.
- Daraus ergaben sich Herausforderungen auf unterschiedlichen Ebenen. Da uns kein Präzedenzfall bekannt war, mussten wir auf unsere Weise damit umgehen.
[Bearbeiten] These
- Platons "Der Staat" ist näher an Objektorientierung als Inform7
(hier kann ich das erklären, was ich oben beschrieben habe)
[Bearbeiten] Konsequenzen
- Ich möchte, indem ich die These argumentiere, dazu kommen, dass diese Nähe zur Objektorientierung nicht heißt, dass der Staat zeitlos und bis heute ein Vorbild ist, sondern im Gegenteil. Durch unsere Beschäftigung mit I7 hat sich mir gezeigt, dass der Wunsch, ein für alle Mal zu klären, wie man das Problem lösen kann, das mit der Gyges-Geschichte entsteht, zwar verständlich ist, dass aber die Lösung nicht darin bestehen kann, einen einzigen Idealzustand zu konstruieren, wie ein gerechter Staat aussehen kann, sondern dass es darum geht, Strukturen zu finden, die einerseits ein vertretbares Maß an Stabilität gewährleisten, andererseits sich aber nicht vor Innovation verschließen dürfen.
- Solche Probleme erfordern Kooperation und das erfordert, dass jede Person prinzipiell Programmierer als auch User sein können soll. Dafür muss der Quellcode und die Möglichkeit zur Partizipation gewährleistet sein. Unzufriedenheit soll sich konstruktiv äußern können. Wir stellen den Code unserer IF in einem Repository zur freien Verfügung.
