From b0664409b92541883e4cf17ff77730aa124e9d48 Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Thu, 19 Oct 2017 15:41:19 +0200 Subject: =?UTF-8?q?Bachelor=C2=B4s=20thesis;=20topic?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- topic.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 topic.md (limited to 'topic.md') diff --git a/topic.md b/topic.md new file mode 100644 index 0000000..78fe5be --- /dev/null +++ b/topic.md @@ -0,0 +1,25 @@ +Ziel ist es eine Methode zu erarbeiten mit der sich Parser beschreiben lassen, +die, gegeben ein vorheriges Ergebnis und eine Beschreibung des Unterschieds +zwischen des damaligen Inputs und dem aktuellen, schneller das neue Ergebnis +produzieren können als es ohne zusätzlichen Kontext möglich wäre. + +Zunächst wird hierfür nach bereits vorhandener Arbeit recherchiert (z.B. die +inkrementellen Parser des Texteditors “Yi”) und versucht deren Ergebnisse vom +obigen Thema abzugrenzen. + +Die algebraische Darstellung von Parsern als funktionale Linsen und von der +Applikation von Änderungen (sowohl an der Eingabe, als auch, im Optimalfall, an +der Ausgabe eines Parsers) als “edit-lenses” soll verwendet werden. + +Dann wird die naheliegenden Konstruktion für den Speziallfall, dass es sich beim +betrachteten Parser um einen DFA handelt der nur prüft ob eine Eingabe +akzeptiert wird und wmgl. eine Implementierung dieser Konstruktion in Haskell +vorgestellt. +Nun wird versucht die Konstruktion zunächst auf Parser und dann auf mächtigere +Automaten zu erweitern. +Speziell sollen hier Parser betrachtet und implementiert werden, die paarweise +auftretende Klammern gruppieren und sicherstellen, dass Variablen in der Syntax +einer imperativen Programmiersprache nur benutzt werden, nachdem sie deklariert +wurden. +Es soll dann versucht werden iterative Parser für XML und ein Fragment der +Programmiersprache Java zu entwicklen und zu implementieren. -- cgit v1.2.3