/Support/Getting started

Support

Here you find basic instructions on how to install and start to use Jazzyk interpreter. For advanced issues and deeper insights consult the project documentation.

We also invite you to join our mailing lists.

Getting started with Jazzyk

Download

The preferred (and currently the only) way to install Jazzyk interpreter is to download the source code and compile and install it yourself.

To download the Jazzyk sources get the “jazzyk-[version].tar.gz”, or “jazzyk-[version].tar.bz2” package from the file repository.

To be able to develop, or run Jazzyk agent programs, you need to install also Jazzyk KR modules. At the time of the first version release, we provide only a very simple plug-in interfacing the agent with the console (package “jzconsole” in the file repository). Later we will publish several other KR modules, which are currently in development.

For more information on Jazzyk KR modules, check the modules ZOO section

Building Jazzyk

Jazzyk is built using standard GNU Autotools chain. It is developed in C++ and compiled with GNU GCC G++ compiler.

Prerequisites/Compilation environment

To compile Jazzyk you of course have to have the standard GNU development tool chain installed together with some additional libraries.

Tools:

Preferrably, use the latest versions of the tools. Even though Jazzyk first developed with GNU gcc 4.2.x C++ compiler serie, as of version 1.20 it was adapted to compile well with GNU gcc 4.3 serie. It should still compile well with older gcc versions, but we are not going toactively support those any more.

Required libraries:

Required run-time programs

Prerequisites/Compilation environment – MS Windows™

While not actively supported, Jazzyk should compile without a major hassle also in MS Windows™ environment using the Cygwin emulation layer environment. Version 1.10 was the last tested to compile well in this setting.

Compilation and Installation

The compilation and installation process follows the standard Autotools command chain:

    $ ./configure
    $ make
    $ make install

Of course the installation command with root privileges on your system. To install Jazzyk in a non-system directory (usually /usr/local/... prefix) follow the help info of the configuration script:

    $ ./configure --help

Optionally, you also might consult the INSTALL file in the distribution package.

Installing precompiled package

KR modules

Before you can write and execute your first Jazzyk program, you need to install some KR modules which you will use in the program.

POSIX/-nix platforms

Simply download a module of your choice (for purposes of this document go for “jzconsole” module) and follow the instructions above:.

KR modules install as dynamically loaded libraries to your system. By default, these are installed as /usr/local/lib/libjz[identifier].-. The identifier is the same identifier you will use in your Jazzyk programs in declarations of agent’s knowledge bases/components.

Writing a sample Jazzyk program

You can use any text editor of your choice to edit a simple Jazzyk program.

To begin with, let’s write a simple “Hello World” program:

declare module environment as console

when read environment (Name) [{What is your name? }]
then print environment (Name) [{ Hello!!! }]
    $ jazzyk hello.jzz
    $ jazzyk -n 1 hello.jzz 

    What is your name? 
    Provide a value for Name: Peter
     Hello!!! 
     Name = Peter

Invoking Jazzyk interpreter

Jazzyk interpreter is normally invoked from command line. It accepts a number of command line options. For instance, in the example above, we specified “-n 1” option. It instructs the Jazzyk interpreter to execute only one cycle of agent deliberation. Not specifying this option would result into an infinite number of deliberation cycles until the agent is not externally killed/stopped, or it exits using its own facilities (exit keyword).

For more information on options Jazzyk interpreter accepts, consult Jazzyk man page, or execute one of the following:

    $ jazzyk --help

or in -nix based operating systems.

    $ man jazzyk