Keywords: teapot

## Why is there no conditional evaluation?

There is no special operator or function for conditional evaluation. I could add one easily, but then next someone would ask for loops and someone else for user-defined functions, variables and so on. If you need a programming language, you know where to find it.

But don't worry. The answer is, that conditional evaluation comes for free with teapot's orthogonal cell addressing. As an example, depending on the cell labelled `X` being negative or not, you want the result to be the string `BAD` or `GOOD`. This is the solution:

> eval(&((@(X)>=0)+x(BAD),y(BAD),z(BAD)))

The cell labelled `BAD` contains the string `BAD`, its right neighbour contains the string `GOOD`. If you have nested conditions, you could weight them with 1, 2, 4 and so on to address a bigger range of cells. Alternatively, you could make use of all three dimensions for nested conditions.