Efficient high-level abstractions for web programmingReport as inadecuate

Efficient high-level abstractions for web programming - Download this document for free, or read online. Document in PDF available to download.

1 TRISKELL - Reliable and efficient component based software engineering IRISA - Institut de Recherche en Informatique et Systèmes Aléatoires, Inria Rennes – Bretagne Atlantique

Abstract : Writing large Web applications is known to be difficult. One challenge comes from the fact that the application-s logic is scattered into heterogeneous clients and servers, making it difficult to share code between both sides or to move code from one side to the other. Another challenge is performance: while Web applications rely on ever more code on the client-side, they may run on smart phones with limited hardware capabilities. These two challenges raise the following problem: how to benefit from high-level languages and libraries making code complexity easier to manage and abstracting over the clients and servers differences without trading this ease of engineering for performance? This article presents high-level abstractions defined as deep embedded DSLs in Scala that can generate efficient code leveraging the characteristics of both client and server environments. We compare performance on client-side against other candidate technologies and against hand written low-level JavaScript code. Though code written with our DSL has a high level of abstraction, our benchmark on a real world application reports that it runs as fast as hand tuned low-level JavaScript code.

Author: Julien Richard-Foy - Olivier Barais - Jean-Marc Jézéquel -

Source: https://hal.archives-ouvertes.fr/


Related documents