Efficient differentiable programming in a functional array-processing language

A Shaikhha, A Fitzgibbon, D Vytiniotis… - Proceedings of the …, 2019 - dl.acm.org
We present a system for the automatic differentiation (AD) of a higher-order functional array-
processing language. The core functional language underlying this system simultaneously …

Functional collection programming with semi-ring dictionaries

A Shaikhha, M Huot, J Smith, D Olteanu - Proceedings of the ACM on …, 2022 - dl.acm.org
This paper introduces semi-ring dictionaries, a powerful class of compositional and purely
functional collections that subsume other collection types such as sets, multisets, arrays …

The programming of algebra

F Henglein, R Kaarsgaard, MK Mathiesen - arXiv preprint arXiv …, 2022 - arxiv.org
We present module theory and linear maps as a powerful generalised and computationally
efficient framework for the relational data model, which underpins today's relational …

[PDF][PDF] A semi-ring dictionary query language for data science

A Shaikhha, M Huot, S Hashemian, A Kaboli… - 2024 - research.ed.ac.uk
This article introduces semi-ring dictionaries, a powerful class of compositional and purely
functional collections that subsume other collection types such as sets, multisets, arrays …

Type your matrices for great good: a haskell library of typed matrices and applications (functional pearl)

A Santos, JN Oliveira - Proceedings of the 13th ACM SIGPLAN …, 2020 - dl.acm.org
We study a simple inductive data type for representing correct-by-construction matrices.
Despite its simplicity, it can be used to implement matrix-manipulation algorithms efficiently …

[PDF][PDF] ALPACAS: a language for parametric assessment of critical architecture safety

M Buyse, R Delmas, Y Hamadi - 35th European Conference on …, 2021 - drops.dagstuhl.de
This paper introduces Alpacas, a domain-specific language and algorithms aimed at
architecture modeling and safety assessment for critical systems. It allows to study the effects …

Synthesis of incremental linear algebra programs

A Shaikhha, M Elseidy, S Mihaila, D Espino… - ACM Transactions on …, 2020 - dl.acm.org
This article targets the Incremental View Maintenance (IVM) of sophisticated analytics (such
as statistical models, machine learning programs, and graph algorithms) expressed as …

Seamless Scope-Safe Metaprogramming through Polymorphic Subtype Inference (Short Paper)

C Gao, L Parreaux - Proceedings of the 23rd ACM SIGPLAN …, 2024 - dl.acm.org
Practical metaprogramming applications often involve manipulating open code fragments,
which is easy to get wrong in the absence of static verification that all variable occurrences …

Multi-stage programming in the large with staged classes

L Parreaux, A Shaikhha - Proceedings of the 19th ACM SIGPLAN …, 2020 - dl.acm.org
Multi-stage programming (MSP) holds great promise, allowing the reliable generation of
specialized, partially-evaluated code with static type-and scope-safety guarantees. Yet, we …

Efficient and Sound Differentiable Programming in a Functional Array-Processing Language

A Shaikhha, M Huot, S Ghasemirad… - arXiv preprint arXiv …, 2022 - arxiv.org
Automatic differentiation (AD) is a technique for computing the derivative of a function
represented by a program. This technique is considered as the de-facto standard for …