Distributed Dart

Student thesis: Master thesis (including HD thesis)

  • Brian Astrup Mikkelsen
  • Jacob Bang
4. term, Software, Master (Master Programme)
This report is a master thesis, which is based upon a study performed on the
previous semester.

This report documents the development of a library used to enable better support
for distributed programming in the Dart programming language.

The report poses three questions: Is it possible to develop a library to support
distributed programming in the Dart programming language?
Is it possible to use the same Dart semantics as those used for concurrent
What are the limitations of imposing Dart concurrent semantics on the library?
Furthermore, the problem statement required that the implementation must be
done entirely in Dart, without making any modifications to the Virtual Machine.

Then follows a walkthrough of central elements of the Dart programming language,
revisited from the study performed on the previous semester.

This is followed by an analysis of the challenges, needed to be solved, namely
how to inject code into another dart instance, how to detect source code
dependencies, how to distribute source code, and how to communicate between

This is followed by an implementation part.
Although the library is not in a working state, it is concluded that it is not
impossible to support distributed programming with a library, and also, that it
is possible to do so using the semantics of darts concurrency model. It is
found that the limitation of not having any way to tell whether an isolate is
alive or dead, is more problematic in a network context than in a local context
Publication date12 Jun 2013
Number of pages82
ID: 77463187