User's Manual
HARSFEN0602
A user program may contain too long line and its representation at the screen may be not convenient,
because not all symbols are shown at the screen. In order to improve readability of the program, a user may
continue this expression at the next line. Three points at the end of line indicates that this line will be
continued.
Example:
Assume that a user program contains the next expression
c = 12 * a + sqrt(2) – sin(3.14 / 2) + 7 ^ 3 * …
(6 + b) * 34
Three points at the end of the first line shows that this expression is not finished and is continued at the next
line.
5.2.3 Limitations
Every line of a user program text may contain 128 characters as maximal length (for better readability at the
screen). For too long text line (more than 128 symbols) the Compiler sets an error.
Expressions also have limitation: the maximal admissible length of expression is 512 symbols, not including
comments. If a program contains complex expression that takes some lines and the summary length of
expression without comments and three points exceeds 512 symbols, then the Compiler sets an error.
There are some limitations of a user program text depending on the specified Harmonica device. The list of
setup parameters of the Harmonica, which are limiting a user program, is represented below.
Maximal length of user program text
Maximal number of routines, including functions, labels and auto routines
Maximal number of variables, including as global as local
Maximal length of the data segment – space for storage of global variables
Maximal length of the code segment – space for compiled code
Maximal depth of the stack – working space of the program
The IDE enables a user to see these parameters (not implemented yet). Ask Ilia and Nicolay
5.3 Expressions And Operators
5.3.1 Numbers
The number syntax is the similar to the Interpreter Language (see Number of the Interpreter Language ), but
there are some differences in evaluation of immediate numbers. User program is compiled at the PC in off-
line mode, so it has more resources, than the Interpreter.
The range for floating point numbers is [-1e38,+1e38], it is more than the Interpreter language numbers
have.
If an integer number overflows integer range, it is converted to float (the Interpreter interprets it as an error).
If a floating-point number overflows floating-point range, it is interpreted as an error.
5.3.2 Mathematical and Logical Operators
The description and syntax is the same as in the Interpreter Language. See Operators of the Interpreter
Language
5.3.3 General rules for operators
The description and syntax is the same as in the Interpreter Language. See General rules of the Interpreter
Language