Introduction

 

Solving problems independently of the memory representation of the objects used is the objective of the Z language. In order to meet this requirement, a set of abstract machines is proposed to designers. These machines simulate both elementary data structures and the most complex structures.
 

Z is designed for educational purposes and exists in two versions (levels). Level 1 is intended for novices in programming, i.e. for students with no or very little knowledge of programming and thus allows an introduction to algorithms. Level 2 is intended for the experienced, i.e. students who already have some experience in programming and want to know more, and thus allows the learning and deepening of data and file structures.
 

The Z language (level 2) is designed primarily for - experimenting with the major data structures, regardless of their implementations, by developing algorithms on arrays, linked linear lists, bilateral lists, queues, stacks, binary search trees, m-ary search trees. - the creation and manipulation of complex data structures such as a list of queues, a list of stacks, a tree of lists, a list of stacks of arrays, etc.
 

Thanks to its file-defined abstract machine, the Z language also allows the use of files and the construction of simple or complex file structures such as B-trees, hashing techniques, etc.