An interpreter for server-side hop

  • Authors:
  • Serpette P. Bernard;Serrano Manuel

  • Affiliations:
  • Inria Sophia Máditerranáe, Sophia Antipolis, France;Inria Sophia Máditerranáe, Sophia Antipolis, France

  • Venue:
  • Proceedings of the 7th symposium on Dynamic languages
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

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.