Ambience is a proof-of-concept language for mobile computing, inspired primarily on Slate, Self, Smalltalk and Lisp. The implementation is under heavy development. This means that the language may still undergo important changes.
News
- 22 October 2007
- Today I will be presenting Ambience's main techniques for dealing with context-aware behaviour adaptation at the Dynamic Languages Symposium.
- 25 September 2007
- I began developing an operational semantics for the core of Ambience, using PLT Redex.
- 17 August 2007
- I am currently writing my thesis, which will hopefully improve the situation regarding the documentation of the language. Don't expect loads of progress on the implementation side, though.
- 25 April 2007
- Switching of contexts is working now; it uses a context combination mechanism which I'll describe somewhere in the near future.
- 21 March 2007
- Snapshot published before a major rework of how subjective dispatch is handled.
- 21 February 2007
- Snapshot published before a major rework of the internal representation of cloning family map objects.
- 23 January 2007
- Initial revision published. The code has been organised in various subsystems, the most important of which is labelled 'core'.
Download
Note that the current code base contains little documentation, which makes it practically unusable for external parties. This situation will hopefully change in the future.
The current development version is available as a Darcs repository. You can get it with the following command:
darcs get http://www.info.ucl.ac.be/~sgm/ambience/current/The following snapshots are also available (these serve mainly as a backup for myself):
Presentations
- 22 October 2007
@ DLS,
Montréal
Presentation corresponding to the accepted paper. - 25 May 2007 @ FUNDP (MoVES project)
Short overview of the context-aware behaviour adaptation mechanism in Ambience. - 9 January 2007 @ INGI Research Meetings
Ph.D. story + current status - 15 November 2006 @ Uniandes
Expanded version of the previous presentation - 10 October 2006 @ INGI (internal meeting)
Motivation, problem statement, overview of the language