We present NumLin, a functional programming language whose type system is designed to enforce the safe usage of the APIs of low-level linear algebra libraries (such as BLAS/LAPACK). We do so through a brief description of its key features and several illustrative examples. We show that NumLin’s type system is sound and that its implementation improves upon naïve implementations of linear algebra programs, almost towards C-levels of performance. By doing so, we demonstrate (a) that linear types are well-suited to expressing the APIs of low-level linear algebra libraries accurately and concisely and (b) that, despite the complexity of prior work on it, fractional permissions can actually be implemented using simple, well-known techniques and be used practically in real programs.
NumLin-ECOOP-19-Presentation (ecoop-19.pptx) | 5.20MiB |
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 |