CPL - Chalmers Publication Library
| Utbildning | Forskning | Styrkeområden | Om Chalmers | In English In English Ej inloggad.

A Distributed Haskell for the Modern Web

Anton Ekblad (Institutionen för data- och informationsteknik, Programvaruteknik (Chalmers))
Göteborg : Chalmers University of Technology, 2015. - 103 s.

We present the design and implementation of a novel programming model and software development suite for interactive, distributed web applications using the Haskell programming language. The suite includes the JavaScript-targeting Haste Haskell compiler which improves on the current state of the art by producing smaller and leaner JavaScript code while preserving compatibility with standard Haskell as well as with the de facto standard GHC compiler.

We also describe the Haste.Foreign lightweight, portable interface for interoperating with JavaScript code, which allows boilerplate-free incorporation of JavaScript libraries in Haskell programs and vice versa. Haste.Foreign is implementable as a client library, and does not require any compiler modifications. While designed for the Haste compiler, the interface is portable across a range of Haskell dialects and high level target platforms.

Finally, we present the Haste.App programming model for distributed web applications, which abstracts over the separation of client and server to allow distributed applications to be written and type checked as a single program. The Haste.App model stands in stark contrast to the conventional way of developing web applications as separate client and server programs communicating explicitly over some network protocol. Haste.App reduces the amount of boilerplate code required to implement distributed web applications, and provides type safety across the network separating the client and server parts. This shortens development times and eliminates costly and embarrassing runtime failures at the boundaries between networked components. Like the foreign function interface, this programming model is implementable entirely as a library without any compiler modifications, and is thus similarly portable.

Nyckelord: web development, compiler, programming models, programming languages, functional programming, interoperability, distributed systems

Den här publikationen ingår i följande styrkeområden:

Läs mer om Chalmers styrkeområden  

Denna post skapades 2015-12-08. Senast ändrad 2016-03-18.
CPL Pubid: 227615


Läs direkt!

Lokal fulltext (fritt tillgänglig)

Länk till annan sajt (kan kräva inloggning)

Institutioner (Chalmers)

Institutionen för data- och informationsteknik, Programvaruteknik (Chalmers)


Informations- och kommunikationsteknik

Chalmers infrastruktur

Relaterade publikationer

Inkluderade delarbeten:

A seamless, client-centric programming model for type safe web applications


Datum: 2016-01-12
Tid: 10:00
Lokal: Room EA, EDIT building, Hörsalsvägen 11
Opponent: Prof. Peter Thiemann, Institut für Informatik, Technische Fakultät, Universität Freiburg, Germany

Ingår i serie

Technical report L - Department of Computer Science and Engineering, Chalmers University of Technology and Göteborg University 145