Recent news


A major update of the Projects section of this website was done. We added the long promissed videos of the Jazzbot and Urbibot projects were finally published. Also the source package of the JzURBI is now available for download.


Version 1.20 is out. This is a technical release updating the deployment with the GNU gcc 4.3 C++ compiler series. Other changes include detaching the project deployment from an external Boost library. For more details consult the ChangeLog.


The latest sources are being released. The interpreter itself only contains few older, though unpublished, bugfixes. For details consult the ChangeLog..

Welcome to Jazzyk

Jazzyk is an experimental, special-purpose programming language for development of knowledge intensive (intelligent) agent systems. Jazzyk agents consist of

Jazzyk was designed to exploit power of heterogeneous knowledge representation (KR) technologies in a single agent system. Each such a KR technology is encapsulated in a separate Jazzyk KR module providing a simple generic interface consisting of a set of query and update operations. Semantics of Jazzyk based on Behavioural State Machines, an adaptation of computational model of Gurevich’s Abstract State Machines.

Theory of Behavioural State Machines, and in turn also Jazzyk, draws a strict distinction between agent’s knowledge representational and behavioural aspects. While an agent’s deliberation abilities reside in its KR modules, its behaviour are encoded as a Behavioural State Machine.

Project status

Currently we published the version 1.20 of the Jazzyk interpreter. This is already a production version of the Jazzyk interpreter with which we produced the Jazzbot and URBI-Bot demo applications.

[go directly to the main download page]

Agile release cycle

Initially, we plan to release new versions quite often depending on the minor changes and possible bug fixes. As the project is all the time in an active development and some minor bug fixing and testing is still going on, we hope the release cycles will become rarer by time.

Version numbering scheme follows major.minor template. Minor releases are bug fixes of previous releases, while major version number will change on an extensive change of either Jazzyk KR module API, or a radical shift of philosophy.