LAMBDA: The ultimate Excel worksheet function

Post by Andy Gordon and Simon Peyton Jones on LAMBDA giving Excel users the ability to define functions.

Ever since it was released in the 1980s, Microsoft Excel has changed how people organize, analyze, and visualize their data, providing a basis for decision-making for the millions of people who use it each day. It’s also the world’s most widely used programming language. Excel formulas are written by an order of magnitude more users than all the C, C++, C#, Java, and Python programmers in the world combined. Despite its success, considered as a programming language Excel has fundamental weaknesses. Over the years, two particular shortcomings have stood out: (1) the Excel formula language really only supported scalar values—numbers, strings, and Booleans—and (2) it didn’t let users define new functions.

Until now.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Finance Reaction: "oooohhh"

My finance clients were thrilled with this new way to overuse Excel.

For my own taste, I find it annoying that Excel doesn't publicly document whether it's a strict or lazy language. Part of the reason is probably that "it depends" on a few edge cases, notably Real-Time Data Servers (promises) and VBA calls.

Language evolution pressure

As I have written previously, the languages evolve in the same direction under complexity pressure. The confirmation comes sometimes from unexpected places. I'm waiting until they add objects and dependency injection to excel as well.

I *really* like spreadsheets

I *really* like spreadsheets (may be not so much excel).

Yes, typical spreadsheet users don't know about programming languages, theory, etc. They just want to munch numbers, or create a small database to track their music collection. Nothing wrong with that. All the power to them.

I would argue that combining visual basic and excel is not a typical use-case, but rather an atrocious one that goes against the grain of the purely functional reactive substrate that are spreadsheets.

Spreadsheets is programming: we should help spreadsheet users to be more powerful, but only if they want to, and without visual basic, thank you.