Skip to main content

Clojerl: The Expressive Power of Clojure on the BEAM.

Facorro, J. and Chechina, N., 2020. Clojerl: The Expressive Power of Clojure on the BEAM. In: Erlang Workshop 2020, 23 August 2020, Online.

Full text available as:

[img]
Preview
PDF
paper.pdf - Accepted Version
Available under License Creative Commons Attribution Non-commercial.

549kB

Official URL: https://icfp20.sigplan.org/home/erlang-2020

Abstract

The development of new features and approaches in programming languages is a continuous and never-ending task, as languages are ultimately tools for expressing and solving problems. The past decade has seen a surge in languages implemented for the BEAM as part of a search to combine the fault-tolerance and scalability of the BEAM with a set of desired language features. In this paper, we present Clojerl, an implementation of the Clojure language with a rich set of data processing capabilities and the expressive power of Lisp for the BEAM. The main design principles of Clojerl are to provide (1) seamless interoperability with the BEAM to enable frictionless interaction with other BEAM languages and (2) portability with Clojure to enable existing Clojure code to run on the BEAM with little or no modifications. We evaluate Clojerl by running a set of experiments that analyse the performance of the eight most widely used expressions. While the results of complex expressions show that Clojerl requires further optimisations, Clojerl significantly outperforms Clojure in a set of basic expressions, confirming that Clojerl has the potential to provide a competitive performance while offering a rich set of programming language features.

Item Type:Conference or Workshop Item (Paper)
Uncontrolled Keywords:BEAM, Clojure, functional programming, programming language, fault tolerance, scalability, concurrency
Group:Faculty of Science & Technology
ID Code:34248
Deposited By: Symplectic RT2
Deposited On:07 Jul 2020 09:04
Last Modified:14 Mar 2022 14:23

Downloads

Downloads per month over past year

More statistics for this item...
Repository Staff Only -