Cind language documentation

Compilation and execution


Cind release package contains the language compiler and execution software.
All files are packed in release file named cind-VERSION-OS-ARCH.PK, for example cind-1.0.4-linux-arm7.tar.gz is a Cind release for Linux on Cortex-A7 processor, and is a Cind release for 32-bit Windows on 80686 processor.

For more about releases and versions of the Cind language see the public page at

Depending on the version and operating system, a release file should be unpacked and placed in some known location in the system. It is also helpful to add subdirectory /bin of the Cind location directory to the system execution path, allowing to execute programs without file location prefix.
For example, on linux systems, it could be done by adding directory to the environment variable PATH:


Program compilation

The cindcompiler program is the Cind language compiler.
The compiler creates a binary files from the text files written in the Cind language and in addition it checks semantic correctness and finds various errors in the program.

Typical compiler call:

$ cindcompiler -o abc.soft abc.cind

creates binary file abc.soft from source text file abc.cind, that should contains a program written in the Cind language.

All other parameters accepted by the compiler depends on the compiler version, and can be listed by calling:

$ cindcompiler --help

For more about writing programs see Code writing style.

Program execution

A program compiled to the binary form (to the file with .soft extension) can be executed in various ways.
In this release, a program can be executed only as a console application.

Basically, to execute program on local machine inside console, enter:

$ cindexec abc.soft

Some local execution methods are available by adding appropriate parameters to the command line, which may be listed by calling:

$ cindexec --help

For more about console program see Cind console application.

Creating libraries

A program's library is a binary file, which contains a set of compiled classes. It is compiled independently and may be used as a part of some program.

There are two main reasons to use libraries:

  • the same classes can be used by many programs, without includes the code into each of them,
  • when writing program, don't need to recompile whole program every time, but just the currently changed part, because the rest of code is keeped in libraries.

A source code of a library, instead of section execute(), has two sections attach() and detach(), which are executed respectively, when given library is being attached to the program or being detached from the program.

To compile a library file add -lib parameter to the compiler call, for example:

$ cindcompiler -lib -o mylib.soft mylib.cind

To use a compiled library, include library file name in execution list in parameters, for example:

$ cindexec mylib.soft abc.soft

Cind programming language 1.0.4