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

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

11:00 - 12:30
Morning talks 2ARRAY at Vertex WS218
Chair(s): Martin Elsman Department of Computer Science, University of Copenhagen
11:00
30m
Talk
An ELI-to-C Compiler: Design, Implementation and Performance
ARRAY
Hanfeng Chen McGill University, Wai-Mee Ching , Laurie Hendren McGill University, Canada
DOI File Attached
11:30
30m
Talk
Array Programming in Whiley
ARRAY
David J. Pearce Victoria University of Wellington
DOI File Attached
12:00
30m
Talk
Flexible Data Views: Design and Implementation
ARRAY
Leo Osvald Purdue University, USA, Tiark Rompf Purdue University
DOI File Attached