User Tools

Site Tools


Sidebar

Jump to
AmbientTalk
CRIME
iScheme

at:download

Downloading/Installing AmbientTalk

AmbientTalk/2

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.

To get started with AmbientTalk programming, we recommend installing our Intellij IDEA plugin (see IDE support).

Download the AmbientTalk Distribution

If you are interested in downloading a stand-alone version of the AmbientTalk/2 interpreter and run it via command line:

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
Installation and Usage

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/init.at 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 224.0.0.1 on port 4446. Make sure your firewall does not block this port.
Requirements

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 version 1.6 or higher, and on J2ME under a CDC/Personal Profile configuration.

Additional instructions on how to run AmbientTalk on J2ME.

IDE Support

We recommend using our Intellij IDEA plugin which already contains the AmbientTalk/2 interpreter and the AmbientTalk standard library (atlib).

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.

Documentation

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: 2020/02/10 13:59 by elisag