Affiliation:
1. Inria Sophia Máditerranáe, Sophia Antipolis, France
Abstract
HOP is a Scheme-based multi-tier programming language for the Web. The client-side of a program is compiled to JavaScript, while the server-side is executed by a mix of natively compiled code and interpreted code. At the time where HOP programs were basic scripts, the performance of the server-side interpreter was not a concern; an inefficient interpreter was acceptable. As HOP expanded, HOP programs got larger and more complex. A more efficient interpreter was necessary. This new interpreter is described in this paper. It is compact, its whole implementation counting no more than 2.5 KLOC. It is more than twice faster than the old interpreter and consumes less than a third of its memory. Although it cannot compete with static or JIT native compilers, our experimental results show that it is amongst the fastest interpreters for dynamic languages.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference22 articles.
1. Threaded code
2. C.-F. Bolz and A. Rigo. How to not write Virtual Machines for Dynamic Languages. July 2007. C.-F. Bolz and A. Rigo. How to not write Virtual Machines for Dynamic Languages. July 2007.
3. Towards reasoning for web applications
4. Efficient interpretation using quickening