ABOUT "U" LANGUAGE

The "U" language is classified as a simple interpretive language. It has been created after almost a decade of experimenting in the field of embedded software for EFT (Electronic Financial Transaction) terminals. A comparison can be made to the Adobe PostScript language, which was designed as page description standard.

The "U" language can be applied for other small devices, although Reference Manual will focus on the EFT terminals. The first interpreter of the language was built for the Cybernet JadeAire mobile terminal with GPRS capability. The second interpreter of "U" runs on the Microsoft Windows platform and simulates JadeAire - offering testing facility to Cybernet software developers.

The following points will help you to understand the power of the "U" language:

Compactness. Terminals have limited resources, but are expected to provide more. EVD (Electronic Voucher Distribution), loyalty cards, smart vouchers, cheque verification, private labels cards, and many more applications run next to the core EFT functionality. Flexibility in multitasking and remote software upgrading require the compactness.

Full Execution Model. "U" is a general-purpose programming language with a strong execution model. Wide range of operators, interpreter specific procedures, programmable functions, stack, indent kind of nesting, select case, do-while loops, conditional execution, variables, covenient access to files and databases, and many more are offered by the language.

Readability. The concept of the stack and original rules of structures nesting make an "U" programme easy to be understood, even for somebody without programming knowledge and practice. Moreover, the programme can be edited by an internal text editor and immediately executed.

Simplicity of Interpretation. The idea of execution indent simplifies the process of interpreting. As a result, interpreters are rather simple and small. It is very important because of limited resources of small terminals.

Uniformity. Strict syntax and semantics rules do not allow programmers to write monsters, understood by nobody, including themselves.

A "U" programme is edited with any text editor either inside or outside a terminal. Provided the terminal has been equipped with a "U" language interpreter, the programme can be launched, i.e. interpreter commanded to scan the source code of the programme. It reads line by line, measures the indent, looks at the first character different than space and decides what to do. Sometimes the sequential progress is interrupted, and the scanner changes position in the programme. For example, if a condition is fulfilled the scanner will proceed to the next line, otherwise it will jump to the closest line with its indent not bigger than the condition line one. The interpreter will stop functioning after reaching the end of the "U" programme.

Usually, the "U" programme will be transmitted from a TMS (Terminal Management System) server to the terminal through one of the communication channels (serial cable, fix line modem, GSM, GPRS, etc.). The transmission is always initiated by the terminal, and supervised by a user, eliminating a chance to contract a virus. The "U" programme received from the server is saved into a file with extension "U". Several applications can be stored in a file system, and run on user's request.

To shorten the time of the transmission, and to increase the number of stored applications, the size of the interpreter as well as the size of applications must be minimal. The "U" language, presented in this book, will give you the optimal result.