ARRAY '14: ACM SIGPLAN International Workshop on <
Libraries, Languages and Compilers for 
Array Programming
Thursday June 12th @ 1:35pm
Friday June 13th @ 9:00am

Co-located with PLDI 2014, Edinburgh, UK.


13:35 - 14:50
Supporting Array Programming in X10
David Grove, Josh Milthorpe and Olivier Tardieu
Compiling a Subset of APL Into a Typed Intermediate Language
Martin Elsman and Martin Dybdal
Array Operators Using Multiple Dispatch
Jeff Bezanson, Jiahao Chen, Stefan Karpinski, Viral Shah and Alan Edelman
Coffee Break
15:20 - 16:35
Abstracting Vector Architectures in Library Generators: Case Study Convolution Filters
Alen Stojanov, Georg Ofenbeck, Tiark Rompf and Markus Püschel
Co-dfns: Ancient Language, Modern Compiler
Aaron Hsu
On Predicting the Impact of Resource Redistributions in Streaming Applications
Merijn Verstraaten and Sven-Bodo Scholz
9:00 - 10:20
A Local-View Array Library for Partitioned Global Address Space C++ Programs
Amir Kamil, Yili Zheng and Katherine Yelick
A Composable Array Function Interface for Heterogeneous Computing in Java
Juan Jose Fumero, Michel Steuwer and Christophe Dubach
Extract and Extend Parallelism using C/C++ Extension for Array Notation on Multicore and Many-core Platforms
Shuo Li and Geva Robert
Coffee Break
10:50 - 12:05
NOVA: A Functional Language for Data Parallelism
Alexander Collins, Dominik Grewe, Vinod Grover, Sean Lee and Adriana Susnea
GPGPU Composition with OCaml
Mathias Bourgoin and Emmmanuel Chailloux transformation-based code generation for GPUs and CPUs
Andreas Kloeckner
13:35 - 14:50
Just-in-time shape inference for array-based languages
Rahul Garg and Laurie Hendren
Multi-Target C Code Generation from MATLAB
Joao Bispo, Luís Reis and João Cardoso
Demo by Joao Bispo
Just-in-time Length Specialization of Dynamic Vector Code
Justin Talbot, Zachary Devito and Pat Hanrahan
Coffee Break
15:20 - 16:45
Invited Talk: "One VM .. to array them all"
Mario Wolczko
Exploiting Implicit Parallelism in Dynamic Array Programming Languages
Shams Imam, Vivek Sarkar, David Leibs and Peter B. Kessler
Bounds Checking via Hybrid Analysis
Troels Henriksen and Cosmin Oancea

Focus and Description

Array-oriented programming is a powerful abstraction for compactly implementing numerically intensive algorithms. Many modern languages now provide some support for collective array operations, which are used by an increasing number of programmers (and non-programmers) for data analysis and scientific computing.

This workshop is intended to bring together researchers from many different communities, including language designers, library developers and compiler researchers, who are working on numeric languages such as R and MATLAB, general-purpose dynamic languages such as Python and JavaScript, and statically typed languages such as Haskell, Scala, and C#.

The aim of this workshop is to foster the cross-pollination of concepts across projects and research communities and to explore new directions, such as:

Accepted Papers

Important Dates

Paper submissions: Wednesday, April 2nd Friday, April 11th
(Anytime on Earth)
Notification of authors: Friday, April 25th, 2014 Due to a delightfully large number of submissions, notifications will be sent Monday April 28th
Submission of camera-ready copies: Wednesday, May 7th, 2014 Wednesday, May 14th
Workshop date: Friday, June 13th, 2014


Submissions should be four to six-page papers in ACM SIGPLAN proceedings style. Submissions may be one of the following: Papers can now be submitted using EasyChair


Accepted papers will be published in the ACM Digital Library.


The workshop will span both Thursday afternoon and all of Friday. Schedule details will be available in the near future.

Organizing Committee

Program Committee

The program committee includes all members of the organizing committee, plus the following members:

Special notes for students

Sponsored by: