The Calc Intelligence project at Microsoft Research Cambridge has a long-standing partnership with the Excel team to transform spreadsheet formulas into a full-fledged programming language. At POPL 2019, they announced data types (which allow cells to contain first-class records) and dynamic arrays (which allow a formula in a cell to compute a whole array that spills into adjacent cells). In a blog post in December 2020 and a sponsored talk at POPL 2021, they announced LAMBDA, which makes Excel’s formulas Turing-complete.
LAMBDA is a new feature of Microsoft Excel that allows you to define custom functions using Excel’s formula language. The Microsoft Research Lambda Editor allows you to edit and organise named LAMBDA functions with ease, as if Excel formulas were program code.
Here are presentations introducing the capabilities of Lambda:
- Excel meets Lambda talk by Andy Gordon, Microsoft Research at Augusta University, May 2021. Based on joint work with Simon Peyton Jones, Jack Williams, and many others. The purpose of this talk is to get you excited about the programming possibilities opened up by LAMBDA in Excel – the world’s most widely used programming language – and to outline some research challenges.
- Presentation on Calc Intelligence and Excel.
- Tutorial on the Microsoft Research LAMBDA Editor by Jack Williams, Microsoft Research. Learn how to get started with the Lambda Editor. You’ll see various examples of text, array, and table processing that show how LAMBDA transforms what is possible in Excel.
- Presentation on Where-provenance for Bidirectional Editing in Spreadsheets.
- Presentation on Elastic Sheet-Defined Functions: Generalising Spreadsheet Functions to Variable-Size Input Arrays. For slides and transcript click here.