In the first part of this series we have looked at a conceptual overview of the Abra specification, which describes the how data flow is achieved within the Qubic Computation Model. In the second part we used the Abra specification to start implementing Qupla, a higher level programming language for Qubic. We introduced Qupla’s most basic entities (trit vectors, look-up tables, and constants) and how they map to Abra. This third part will introduce how we can use functions and expressions to create Qupla programs.
Qupla functions and expressions
The basic entities that make up a Qupla program are (user-defined) trit vectors, constants, and look-up tables (LUTs). These entities will be used as components in expressions that describe how to transform input values into output values by having the input values processed by Qupla’s programming constructs. Expressions in turn can be grouped into functions to achieve more complex tasks.
A Qupla function is a named group of expressions that describe how to transform…