Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.

7
Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web

Transcript of Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.

Page 1: Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.

Simon Georg Pinkel

Alice Server Pages

Funktionale Programmierung und das

Web

Page 2: Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.

2

Motivation

Page 3: Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.

3

Motivation (2)

Browser myhost.com

DatenbankCompiler

http://myhost.com/index.asp

index.asp

Http Server

Page 4: Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.

4

Motivation (3)

Beispiel:<html><body>

<?php function fak($n) { return ( $n<=1 ? 1 : $n * fak($n-1)); } ?>

<h1>Meine erste dynamische Webseite!</h1>

<ul><?php for($i=1; $i<=$n; $i++) printf("<li>%d",fak($i)); ?></ul>

</body></html>

http://myhost.com/erste.php?n=6

Page 5: Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.

5

verwandte Arbeiten• ASP.Net• PHP Hypertext Preprocessor• Java Server Pages

und was ist mit ML?• ML Server Pages

• Moscow ML als Skriptsprache: <ul><?msp

List.app (fn s => print("<li>" ^ Int.toString s)) (List.tabulate(n,fak))?></ul>

SMLServer• Ein Modul für AOLServer, welches die Entwicklung von

dynamischen Webapplikation in SML ermöglicht• Unterstützt die ML Server Pages

Page 6: Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.

6

Alice Server Pages- Anforderungen• Tools zur Bearbeitung/Interpretation von HTML-seiten mit

eingebetteten Programmfragmenten• Handhabung von dynamischem Input wie Formularvariablen

oder Cookies• Datenbankschnittstelle• niedrige ReaktionszeitenAusserdem soll untersucht werden, inwieweit sich Alice als

Skriptsprache für Webseiten eignet; Also inwiefern• Lässt sich das Typsystem von Alice nutzen?• Fügen sich funktionale Programmieridiome in diesem Kontext

ein?• Lassen sich Server Pages in einen Webserver integrieren?• Finden Alice-spezifische Features wie Nebenläufigkeit,

Laziness oder verteilte Programmierung Anwendung?

Page 7: Simon Georg Pinkel Alice Server Pages Funktionale Programmierung und das Web.

7

Alice Server Pages- Arbeitspackete

1. Compiler, der aus HTML mit Alicefragmenten pures Alice generiert

2. Parser für dynamischen Input

3. Interface zum Zugriff auf die geparsten Daten

4. Caching der Kompilate

5. Datenbank-API

6. Beispielanwendung