ELIOM: A Core ML Language for Tierless Web Programming

被引:8
|
作者
Radanne, Gabriel [1 ]
Vouillon, Jerome [2 ]
Balat, Vincent [2 ]
机构
[1] Univ Paris Diderot, Sorbonne Paris Cite, CNRS, IRIF UMR 8243, Paris, France
[2] Univ Paris Diderot, CNRS, IRIF UMR 8243, Sorbonne Paris Cite,BeSport, Paris, France
关键词
Web; Client-server; OCaml; ML; Eliom; Functional;
D O I
10.1007/978-3-319-47958-3_20
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
ELIOM is a dialect of OCAML for Web programming in which server and client pieces of code can be mixed in the same file using syntactic annotations. This allows to build a whole application as a single distributed program, in which it is possible to define in a composable way reusable widgets with both server and client behaviors. Our language also enables simple and type-safe communication. ELIOM matches the specificities of the Web by allowing the programmer to interleave client and server code while maintaining efficient one-way server-to-client communication. The ELIOM language is both sufficiently small to be implemented on top of an existing language and sufficiently powerful to allow expressing many idioms of Web programming. In this paper, we present a formalization of the core language of ELIOM. We provide a type system, the execution model and a compilation scheme.
引用
收藏
页码:377 / 397
页数:21
相关论文
共 50 条