Resource-Based Web Applications

We present an approach to write web applications in the functional
logic language Curry. Logic features are employed to provide type based con-
version combinators for arbitrary datatypes. With a restricted version of these
combinators our library can also be implemented in a purely functional language.

The web applications we propose are directly based on the Hypertext Trans-
fer Protocol (HTTP) – no additional protocol on top of HTTP is necessary. We
provide a typed interface to HTTP that abstracts from the format used to transfer
the data. Hence, we decouple a resource from its representation on the network.