diff options
author | Gregor Kleen <gkleen@yggdrasil.li> | 2017-10-19 15:41:19 +0200 |
---|---|---|
committer | Gregor Kleen <gkleen@yggdrasil.li> | 2017-10-19 15:41:19 +0200 |
commit | b0664409b92541883e4cf17ff77730aa124e9d48 (patch) | |
tree | d6b9d97c4932af167899cdbaa03c64e14ad85287 /topic.md | |
download | incremental-dfsts-b0664409b92541883e4cf17ff77730aa124e9d48.tar incremental-dfsts-b0664409b92541883e4cf17ff77730aa124e9d48.tar.gz incremental-dfsts-b0664409b92541883e4cf17ff77730aa124e9d48.tar.bz2 incremental-dfsts-b0664409b92541883e4cf17ff77730aa124e9d48.tar.xz incremental-dfsts-b0664409b92541883e4cf17ff77730aa124e9d48.zip |
Bachelor´s thesis; topic
Diffstat (limited to 'topic.md')
-rw-r--r-- | topic.md | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/topic.md b/topic.md new file mode 100644 index 0000000..78fe5be --- /dev/null +++ b/topic.md | |||
@@ -0,0 +1,25 @@ | |||
1 | Ziel ist es eine Methode zu erarbeiten mit der sich Parser beschreiben lassen, | ||
2 | die, gegeben ein vorheriges Ergebnis und eine Beschreibung des Unterschieds | ||
3 | zwischen des damaligen Inputs und dem aktuellen, schneller das neue Ergebnis | ||
4 | produzieren können als es ohne zusätzlichen Kontext möglich wäre. | ||
5 | |||
6 | Zunächst wird hierfür nach bereits vorhandener Arbeit recherchiert (z.B. die | ||
7 | inkrementellen Parser des Texteditors “Yi”) und versucht deren Ergebnisse vom | ||
8 | obigen Thema abzugrenzen. | ||
9 | |||
10 | Die algebraische Darstellung von Parsern als funktionale Linsen und von der | ||
11 | Applikation von Änderungen (sowohl an der Eingabe, als auch, im Optimalfall, an | ||
12 | der Ausgabe eines Parsers) als “edit-lenses” soll verwendet werden. | ||
13 | |||
14 | Dann wird die naheliegenden Konstruktion für den Speziallfall, dass es sich beim | ||
15 | betrachteten Parser um einen DFA handelt der nur prüft ob eine Eingabe | ||
16 | akzeptiert wird und wmgl. eine Implementierung dieser Konstruktion in Haskell | ||
17 | vorgestellt. | ||
18 | Nun wird versucht die Konstruktion zunächst auf Parser und dann auf mächtigere | ||
19 | Automaten zu erweitern. | ||
20 | Speziell sollen hier Parser betrachtet und implementiert werden, die paarweise | ||
21 | auftretende Klammern gruppieren und sicherstellen, dass Variablen in der Syntax | ||
22 | einer imperativen Programmiersprache nur benutzt werden, nachdem sie deklariert | ||
23 | wurden. | ||
24 | Es soll dann versucht werden iterative Parser für XML und ein Fragment der | ||
25 | Programmiersprache Java zu entwicklen und zu implementieren. | ||