Write a Blog >>
Sun 18 Jun 2017 11:00 - 11:30 at Vertex WS218 - Morning talks 2 Chair(s): Martin Elsman

ELI is a succinct array-based interactive programming language derived from APL. In this paper we present the overall design and implementation of a bootstrapped ELI-to-C compiler which is implemented in ELI. We provide a brief introduction to the ELI language, a high-level view of the code generation strategy, and a description of our bootstrapping process. We also provide a preliminary performance evaluation. Firstly, we use three existing C benchmarks to demonstrate the performance of the ELI-generated C code as compared with interpreted ELI and native C. Secondly, we use two benchmarks originally from APL to compare the ELI-generated C to interpreted ELI and a naive hand-generated C version. These preliminary results are encouraging, showing speedups over the interpreter and in many cases performance close to C. The results also show that some future optimizations, such as copy elimination/avoidance, would be beneficial.

Slides (chen-ecc-slides.pdf)962KiB

Sun 18 Jun
Times are displayed in time zone: (GMT+02:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

11:00 - 12:30: ARRAY 2017 - Morning talks 2 at Vertex WS218
Chair(s): Martin ElsmanDepartment of Computer Science, University of Copenhagen
array-201711:00 - 11:30
Hanfeng ChenMcGill University, Wai-Mee Ching, Laurie HendrenMcGill University, Canada
DOI File Attached
array-201711:30 - 12:00
David PearceVictoria University of Wellington
DOI File Attached
array-201712:00 - 12:30
Leo OsvaldPurdue University, USA, Tiark RompfPurdue University
DOI File Attached