## Could Functional Programming be called Algebraic Programming?

Lately as I’ve been writing and editing Functional Programming, Simplified: Updated for Scala 3, I’ve had the thought, could *Functional Programming (FP)* be called *Algebraic Programming*? That is, is “algebraic programming” a more accurate term for this style of programming?

The reason I say this is because, yes, FP is about pure functions, higher-order functions, functions as values, referential transparency, etc., but it’s also about domain modeling (ADTs), immutable variables (algebraic) and immutable data, errors as values, and expression-oriented programming (expressions as equations).

Anyhoo, that’s just a random thought for the day.

As a little update some time later, here are a few additional notes:

- Functional programmers also use the term “blueprint” a lot, so there might be another possible name in there (something like Blueprint Programming).
- I’ve read that other people use the name
*mathematical functions*when talking about what I call*pure functions.* - To be clear, I’m not calling for a name change or anything like that, just observing that Algebraic Programming may be a more accurate name.