This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
at:tutorial:preface [2007/07/11 08:43] tvcutsem * |
at:tutorial:preface [2007/07/11 08:45] tvcutsem *rewrote |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ==== Preface ==== | ||
- | AmbientTalk is a distributed programming language especially geared towards developing applications deployed on mobile networks. The language combines elements from languages such as Scheme (closures), Smalltalk (pure OO), Self (prototypes and delegation) and actor languages. | ||
- | |||
- | ==== History and design rationale ==== | ||
- | |||
- | The AmbientTalk language saw the light in 2005, when it was implemented by Jessie Dedecker as part of his PhD research. AmbientTalk was originally built as a distributed extension of another language named Pic% (pronounce: Pic-oh-oh). Pic% itself is a prototype-based object-oriented extension of the language [[http:// | ||
- | |||
- | Pico borrowed many of its design principles and concepts from the Scheme programming language. The foremost design concern of Pico was indeed to build a simple and extensible language based upon simple rules. Since its original conception in '96 and its use in teaching, Pico has also been used as a research artifact. Many offspring exist in which particular language features have been investigated. AmbientTalk is one such offspring, used in the context of exploring distributed programming abstractions for mobile ad hoc networks. | ||
- | |||
- | The AmbientTalk language described in this tutorial is actually AmbientTalk/ | ||
- | |||
- | In 2006, Tom Van Cutsem and Stijn Mostinckx started the AmbientTalk/ | ||
- | |||
- | Perhaps the most significant change from AmbientTalk/ | ||
- | |||
- | Today, AmbientTalk/ | ||
- | |||
- | ==== About this tutorial ==== | ||
- | |||
- | The tutorial introduces the AmbientTalk programming language from its basic building blocks (functions, objects, messages) up to its advanced distribution model (remote objects, discovery, failure handling). The tutorial is not a comprehensive reference manual that tries to give the precise semantics of all of AmbientTalk' | ||
- | |||
- | The tutorial is subdivided into different chapters that each highlight different aspects of the language. Sometimes the cohesion within one chapter is very high. For example, the chapter on object-oriented programming gives an overview of a number of language features that are all related to one another. Sometimes, different sections of a chapter are not directly related (e.g. the chapter on modular programming). |