Fexl - a Function Expression Language

Fexl is a simple but powerful functional scripting language. It allows you to manipulate numbers, strings, streams, and functions easily and reliably, all within a secure "sandbox". (Fexl is pronounced fex'-uhl, similar to "pixel".)

You may browse or download the Fexl source code at github.com. (Updated Sun 2018-12-16)

Guide to configuring a new installation

Guide to control structures in Fexl

Index of predefined functions

Notes

2018-11-28 I've been doing some serious accounting code in Fexl, including pooled investment accounting and our internal company accounting. In doing so I've developed some strong techniques for doing event-based accounting in Fexl, including ways of running through a very long series of events and creating "APIs" which encapsulate all the ways you can query the history.

I really need to write up some examples to illustrate how to do complex practical applications like this in Fexl. Doing applications in any functional programming language is new enough for most people, and doing them in Fexl is new even for people already well-versed in functional programming. And even though I created the language myself, it still took me some time and effort to figure out how best to use it effectively. Now I'm writing all new code in Fexl, and gradually replacing our old code with Fexl as well.

Examples