System Constructs (or Language Constructs) are predefined syntax elements of a programming language that provide basic operations and program execution control. They are an integral part of the language and offer developers ready-made mechanisms for solving typical tasks.
This construct is designed to display a character with the corresponding decimal code. For example:
pln Copyright ##169$ 2025 John Doe
This will display on the screen:
Copyright © 2025 John Doe
This construct can be used for escaping characters. For example, you can escape the ampersand character to prevent it from being interpreted as the & system construct:
btn office, Go to John Doe ##38$ Co. office
This will display a button with the name “Go to John Doe & Co. office” on the screen.
Direct use of the ampersand in the button name would result in incorrect code interpretation.
The character displayed using this construct is only suitable for screen output. It cannot be part of an operator.
This construct is designed to display a space character. For example:
pln one#$two
This will display on the screen:
one two
As a rule, there are no issues with direct use of the space character. However, using this construct in some cases can improve the visual readability of the code.
This construct has a direct counterpart: #%$.
This construct is designed to display a space character. For example:
pln one#%$two
This will display on the screen:
one two
As a rule, there are no issues with direct use of the space character. However, using this construct in some cases can improve the visual readability of the code.
This construct has a direct counterpart: #$.
This construct is designed to create a line break. For example:
pln one#%/$two
This will display on the screen:
one
two
This construct has a direct counterpart: #/$.
This construct is designed to display the value of a variable of any type. For example:
item = "apples"
quantity = 5
pln I have #%quantity$ #%item$.
This will display on the screen:
I have 5 apples.
This construct has a direct counterpart: #[variable]$.
This construct is designed to create a line break. For example:
pln one#/$two
This will display on the screen:
one
two
This construct has a direct counterpart: #%/$.
This construct is designed to display the value of a variable of any type. For example:
item = "apples"
quantity = 5
pln I have #quantity$ #item$.
This will display on the screen:
I have 5 apples.
This construct has a direct counterpart: #%[variable]$.
This construct is designed to combine multiple operators into a single command. For example:
btn inv+ Screwdriver & cls & goto garage, Take a screwdriver and go to the garage
This will display a button with the name “Take a screwdriver and go to the garage” on the screen, which, when clicked, will execute 3 actions simultaneously:
Please note that in some cases, it may be preferable to create and call a procedure with multiple actions using the proc operator.
Also, long sequences of operators combined using this construct can be written on separate lines using the line continuation character \
.
This construct is designed to add comments to the program code. For example:
/* This is text that will be ignored */
pln Hello, World!
/*
This is text
that will be ignored
*/
This will display on the screen:
Hello, World!
Comments are designed to add explanations and notes to the program code. Additionally, the commenting mechanism allows temporarily excluding parts of the code from program execution while preserving them for future use.
Please note that it is important to both open the comment block with the symbols “/*
” and close it with the symbols “*/
”. This construct requires both of these elements.
This construct is designed to line continuation, to break a single-line instructions into multiple physical lines in the source code. For example:
if key = 1 \
then door = 0 \
else door = 1
This code is equivalent to the code:
if key = 1 then door = 0 else door = 1
The \
character must be the last character of the line. There may be any number of blank lines after a line ending in \
: all of them will be skipped and the next non-blank line will be considered the continuation.