User Tools

Site Tools


Jump to


This is an old revision of the document!

Distributed and Mobile Programming Paradigms


This site covers the lab sessions for the Distributed and Mobile Programming Paradigms course, previously known as Software Distribution and Mobility Seminar. The aim of the lab sessions is twofold. First, students put in practice some of the concepts about distributed programming paradigms seen at the theory class. Second, students get familiar with AmbientTalk, the distributed programming language used for the project.

In each session, students implement a small application or a subset of an application in AmbientTalk. The idea is to incrementally implement the application starting from a skeleton code. The exercises start from the basics of the AmbientTalk language and gradually introduce how to use concurrent and distributed programing abstractions such guards, asynchronous message passing, distributed programming with tuple spaces, and peer-to-peer networks. They also deploy some of their applications on real devices such as Android phones and tablets.

See the official course site at PointCarré for more information on the course itself.


Course lecturer: Wolfgang De Meuter
Assistant: Elisa Gonzalez Boix
Room 1E.05 (Mac room)
Time slot 2st Semester, Tuesday, 14:00 - 16:00
Communication Via PointCarré



Here comes a temporary schedule for the lab sessions. Assignments and solutions will be published before and after each session, respectively.

  • Session 1: First steps in Android
    • Date: Week 23 - 19/02/13
    • Concepts: Building first app, building a dynamic UI, Activities and intents, working with AsyncTasks, managing the Activity lifecycle
  • Session 1: First steps in AmbientTalk
    • Date: Week 23 - 19/02/13
    • Concepts: Functional, imperative and object-oriented programming.
  • Session 3: Internet Cafe
    • Date: Week 24 - 26/02/13
    • Concepts: concurrent programming with actors, future-typed message passing,guards, unit testing.
  • Session 4: Mobile Music Player
    • Date: Week 25 - 05/03/13
    • Concepts: insight in language support for partial failures, conditional synchronization with futures.
  • Session 5: weScribble on Android devices
    • Date: Week 26 - 12/03/13
    • Concepts: distributed programming, language symbiosis with Java and Android.
  • Session 6: Flikken in TOTAM
    • Date: Week 27 - 19/03/13
    • Concepts: distributed programming with tuple spaces.
  • Session 7: wePoker on Android devices
    • Date: Week 28 - 26/03/13
    • Concepts: distributed programming with tuple spaces.
  • Session 8: goShopping with REME-D
    • Date: Week 31 - 16/04/13
    • Concepts: reflective programming, introspection, distributed debugging with REME-D.
  • Session 9: Omnireferences
  • Date: Week 32 - 23/04/13
  • Concepts: reflective programming, interception, group communication abstractions.


  • Project assignment: To be announced.
  • Watch some demos of previous projects here
teaching/dmpp.1361216758.txt.gz · Last modified: 2013/02/18 21:16 (external edit)