Downloading/Installing AmbientTalk


AmbientTalk AmbientTalk/2 is the latest incarnation of the AmbientTalk programming language. The language can best be described as ‘a language for scripting your PDA‘. The language has been designed to implement distributed applications for mobile networks. The language provides built-in support for concurrency (actors), distributed message passing, peer-to-peer discovery, partial failure handling, ...

AmbientTalk/2 has been designed to co-exist with available Java programs. It offers a symbiotic interface to the Java language, making it possible to instantiate and use Java objects from within AmbientTalk, and to pass AmbientTalk objects that implement a Java interface to the Java level. This makes AmbientTalk an ideal language to write ‘distributed glue code’ to make isolated Java programs talk to one another.


See the changelog for changes w.r.t. previous versions.

This build contains:

  • The AmbientTalk/2 Interpreter
  • iat, the Interactive AmbientTalk Shell
  • The AmbientTalk standard library

The AmbientTalk/2 interpreter is written in pure Java and requires a regular J2SE Java Virtual Machine supporting version 1.5 or higher. AmbientTalk currently runs on Android 1.6 and on J2ME under a CDC/Personal Profile configuration.

Additional instructions on how to run AmbientTalk on J2ME.

Installation and Usage

To implement and run ambientTalk programs, we recommend using our Eclipse Plugin (see IDE support).

To run the interactive shell, it suffices to launch the included iat shell script. IAT is a simple read-eval-print loop: statements are typed at the command line, evaluated and the result is printed to standard output. Note that the log and error traces are piped to the console.

For an overview of the iat shell options, execute:

iat --help

The system library shipped with the build can be found in the at/ directory. It includes, among others, some demo applications and additional language constructs (most notably future-type asynchronous message sends). Also, the file at/init/ is loaded by default in each actor created at runtime to intialize that actor’s global scope.

We advise you to add iat to the $PATH environment variable, such that iat can be invoked from any directory. Note also that iat assumes that the java executable is available on the $PATH

Note to windows users: iat.bat has been reported not to work when the AT_HOME directory contains spaces, so consider placing your AmbientTalk distribution in a directory that does not contain spaces.

For service discovery, AmbientTalk makes use of IP multicasting. AmbientTalk broadcasts messages to IP on port 4446. Make sure your firewall does not block this port.

IDE Support

We recommend using our Eclipse plugin (IdeAT) which already contains the ambientTalk/2 interpreter.

For Mac OS X users that use TextMate, there exists a TextMate bundle for AmbientTalk/2, which is available for download below.

The TextMate plugin supports:

  • Source code colouring
  • Autocompletion for statements such as if, def etc. (by pressing TAB)
  • Running AmbientTalk/2 scripts by pressing Apple+R (output is shown in a separate window)

Please note: upon installing the bundle, you need to set the AT_HOME variable in the TextMate Preferences window (under the Advanced tab pane) to point to the directory in which iat can be found.

For a full overview of the supported features, open the Bundles > Bundle Editor > Show Bundle Editor menu and select the AmbientTalk 2 bundle in the bundle editor. All available actions, together with their hotkey are listed there.


See the tutorial for an introduction to AmbientTalk/2. An overview of the available primitives and libraries is available in the language reference.

at/download.txt · Last modified: 2013/02/06 16:29 by tvcutsem
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki