Many different data analytics tasks boil down to linear algebra primitives. In practice, for each different type of workload, data scientists use a particular specialised library. In this paper, we present Pilatus, a polymorphic iterative linear algebra language, applicable to various types of data analytics workloads. The design of this domain-specific language (DSL) is inspired by both mathematics and programming languages: its basic constructs are borrowed from abstract algebra, whereas the key technology behind its polymorphic design uses the tagless final approach (a.k.a. polymorphic embedding/object algebras). This design enables us to change the behaviour of arithmetic operations to express matrix algebra, graph algorithms, logical probabilistic programs, and differentiable programs. Crucially, the polymorphic design of Pilatus allows us to use multistage programming and rewrite-based optimisation to recover the performance of specialised code, supporting fixed sized matrices, algebraic optimisations, and fusion.
Thu 18 JulDisplayed time zone: Belfast change
10:30 - 12:10 | |||
10:30 20mResearch paper | How to Avoid Making a Billion-Dollar Mistake: Type-Safe Data Plane Programming with SafeP4 Research Papers Matthias Eichholz , Eric Campbell Cornell University, Nate Foster Cornell University, Guido Salvaneschi TU Darmstadt, Mira Mezini TU Darmstadt, Germany DOI Media Attached | ||
10:50 20mResearch paper | Fling—A Fluent API Generator Research Papers DOI | ||
11:10 20mResearch paper | Semantic Patches for Java Program Transformation Research Papers Hong Jin Kang School of Information Systems, Singapore Management University, Ferdian Thung , Julia Lawall Inria/LIP6, Gilles Muller LIP6-INRIA/UPMC, Lingxiao Jiang Singapore Management University, David Lo Singapore Management University DOI Media Attached | ||
11:30 20mResearch paper | Finally, a Polymorphic Linear Algebra Language Research Papers DOI | ||
11:50 20mResearch paper | NumLin: Linear Types for Linear Algebra Research Papers DOI Pre-print Media Attached File Attached |