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 --- literature/a-programmable-editor.pdf | 1 + literature/boomerang.pdf | 1 + literature/dylus.pdf | 1 + literature/edit-lenses.pdf | 1 + literature/lazy-functional-incremental-parsing.pdf | 1 + literature/p224-swierstra.pdf | 1 + literature/parsing-in-a-broad-sense.pdf | 1 + topic.md | 25 ++++++++++++++++++++++ 8 files changed, 32 insertions(+) create mode 120000 literature/a-programmable-editor.pdf create mode 120000 literature/boomerang.pdf create mode 120000 literature/dylus.pdf create mode 120000 literature/edit-lenses.pdf create mode 120000 literature/lazy-functional-incremental-parsing.pdf create mode 120000 literature/p224-swierstra.pdf create mode 120000 literature/parsing-in-a-broad-sense.pdf create mode 100644 topic.md diff --git a/literature/a-programmable-editor.pdf b/literature/a-programmable-editor.pdf new file mode 120000 index 0000000..133b312 --- /dev/null +++ b/literature/a-programmable-editor.pdf @@ -0,0 +1 @@ +../../.git/annex/objects/6M/gX/SHA256E-s366784--5fe07ac6d92e30a62986acc744ab3645bfd948387d8e544ef15c79ae886ae5a4.pdf/SHA256E-s366784--5fe07ac6d92e30a62986acc744ab3645bfd948387d8e544ef15c79ae886ae5a4.pdf \ No newline at end of file diff --git a/literature/boomerang.pdf b/literature/boomerang.pdf new file mode 120000 index 0000000..c9d491f --- /dev/null +++ b/literature/boomerang.pdf @@ -0,0 +1 @@ +../../.git/annex/objects/KQ/5G/SHA256E-s247003--cb39a2e8835fa44aee87b5375030501847f06f7c59b6f2aa037d986d36683244.pdf/SHA256E-s247003--cb39a2e8835fa44aee87b5375030501847f06f7c59b6f2aa037d986d36683244.pdf \ No newline at end of file diff --git a/literature/dylus.pdf b/literature/dylus.pdf new file mode 120000 index 0000000..3418031 --- /dev/null +++ b/literature/dylus.pdf @@ -0,0 +1 @@ +../../.git/annex/objects/gG/1v/SHA256E-s1719789--38149c95efe58f903f8ca1e0d0e504143f0bf8fb878093586f2d5f606de819d3.pdf/SHA256E-s1719789--38149c95efe58f903f8ca1e0d0e504143f0bf8fb878093586f2d5f606de819d3.pdf \ No newline at end of file diff --git a/literature/edit-lenses.pdf b/literature/edit-lenses.pdf new file mode 120000 index 0000000..d9303a5 --- /dev/null +++ b/literature/edit-lenses.pdf @@ -0,0 +1 @@ +../../.git/annex/objects/79/JM/SHA256E-s830192--6b99781e9fd53b7afed756f05f88b8f803aaf1f51b82ccba389e046062f87f31.pdf/SHA256E-s830192--6b99781e9fd53b7afed756f05f88b8f803aaf1f51b82ccba389e046062f87f31.pdf \ No newline at end of file diff --git a/literature/lazy-functional-incremental-parsing.pdf b/literature/lazy-functional-incremental-parsing.pdf new file mode 120000 index 0000000..1cfe12e --- /dev/null +++ b/literature/lazy-functional-incremental-parsing.pdf @@ -0,0 +1 @@ +../../.git/annex/objects/FJ/k7/SHA256E-s332806--038a1fe908d94a2be55f8dd26c89febf790a0b14f8210eccff4c657c9409b3aa.pdf/SHA256E-s332806--038a1fe908d94a2be55f8dd26c89febf790a0b14f8210eccff4c657c9409b3aa.pdf \ No newline at end of file diff --git a/literature/p224-swierstra.pdf b/literature/p224-swierstra.pdf new file mode 120000 index 0000000..0ee4c6c --- /dev/null +++ b/literature/p224-swierstra.pdf @@ -0,0 +1 @@ +../../.git/annex/objects/xf/fV/SHA256E-s144820--678e7de3d2c0024a5ce9b5053acc6d6bfca3db84ff7397b677fe5a8adb5e5d75.pdf/SHA256E-s144820--678e7de3d2c0024a5ce9b5053acc6d6bfca3db84ff7397b677fe5a8adb5e5d75.pdf \ No newline at end of file diff --git a/literature/parsing-in-a-broad-sense.pdf b/literature/parsing-in-a-broad-sense.pdf new file mode 120000 index 0000000..724842e --- /dev/null +++ b/literature/parsing-in-a-broad-sense.pdf @@ -0,0 +1 @@ +../../.git/annex/objects/P2/5w/SHA256E-s847236--f6935fb01184772b11c940883d5fd8d5d686842ad41b1e1ccb136a594baad5cf.pdf/SHA256E-s847236--f6935fb01184772b11c940883d5fd8d5d686842ad41b1e1ccb136a594baad5cf.pdf \ No newline at end of file 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