Skip to main content
Skip table of contents

Common Expression Errors

Writing expressions within LabMaestro requires a general understanding of the syntax and semantics of programming languages. On this page, we explain common expression errors, helping you identify and resolve them quickly.

Thank you for your interest in LabMaestro! The page you are trying to access is under development. We are working on comprehensive documentation to help you make the most of our software. If you require any help, please feel free to contact us via email at support@vpixx.com.

LabMaestro will outline a field in red if it cannot interpret an expression, such as a customized property value. If you encounter such an error, hover your mouse over the expression to see an error code. You can visit Common Expression Errors for more explanations regarding common error codes.


Errors in expressions can be of multiple types. As outlined above, any error will give you a visual indication when there is an issue with the expression.

The types of errors are as follows:

Typecheck Error, there is an error with the type of values used in the expression. This can arise if you attempt to match different types on two sides of an operand:

Operator did not have the same type. Left-hand side has type [ ], while right-hand side has type [].

This can also happen if you use compare operations:

True and false branches of ternary operator (a ? b : c) did not have the same type.

An example of this error can happen when you use integral type versus numeral type:

Property expects an expression of Integral type, but was provided an expression of Numeral type.

Integrals are whole numbers and they cannot contain decimal points. This error indicates that you tried to use an expression that contains decimals, such as a Floating Type. To resolve this issue, you can change the type of the destination variable where the expression was used, or of the original variable if possible.

Token Error, this type of error can happen when a given number is too big (too many characters) or a string is found within a number, making the conversion is impossible.

Number is too big to fit.

Lexer could not read literal starting with number value.

Parser Error, can happen when there is an error in the expression presenting good parsing of it. For example, missing parenthesis or a conditional operator with no else branch.

Found conditional operator ? but no : for else branch.

Missing closing parenthesis in function definition.

Scope Error, when there is something that does not exist within the scope of the expression. For example, a variable or a function which does not exist.

Identifier [] not found.

Method [] must issue a result.

A common Identifier not found error is caused by failing to add quotation marks (““) around a string. This causes LabMaestro to look for a nonexistent variable. For example, this can occur when building an expression that checks if a particular button is pressed. The correct syntax is:

C
=LastEvent.Key.Value=="Space"

Cycle Error, when there is a cycle within your expression. For example, the result of this expression is needed by something else which also is needed for this expression. Instead of evaluating the expression in infinitum, we throw a cycle error.

Identifier [] pointed to a property containing an expression that lead to a cycle.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.