ScalaNeko is a development platform aimed at prototyping distributed algorithms and as a support for teaching the design of such algorithms. The platform is written in Scala and allows to write distributed algorithms in a very concise yet easily-readable way.
ScalaNeko is based on the Neko toolkit [1,2]; a project originally developed at EPFL by Péter Urbán, Xavier Défago, and several other contributors in the laboratory of Prof. André Schiper (now retired). The Neko toolkit was written in Java and allowed, without changing its code, to execute a distributed program either on a real network or in a simulation. The purpose was to support the lifecycle of a distributed algorithm from design to performance evaluation, under the premise that a change in writing style between simulation and execution would be an undesirable factor affecting performance measurements.
While ScalaNeko does not retain the ability to execute on a real network (i.e., it supports simulation-only), its purpose is exclusively aimed at teaching. With this in mind, great efforts where directed at simplifying the way distributed algorithms would be expressed in that model. ScalaNeko was successfully used as programming support for lectures on distributed systems at JAIST and at Hiroshima University.
This version of ScalaNeko is usable but rough around the edges. Use at your own risks! The documentation generated through scaladoc provide some information on how to use it and its syntax, but it is partly stale. Although the repository is made public, we do not consider it to be easily usable without explicit instructions. Anyone is free to install and use ScalaNeko in its current form, but this is at your own risk and no support will be offered about it. In contrast, we are currently developing Ocelot, a successor to ScalaNeko. It will be used in future lectures at Tokyo Institute of Technology and we intend to provide a complete documentation and full support for it.
-
P. Urbán, X. Défago, and A. Schiper. Neko: A single environment to simulate and prototype distributed algorithms. Journal of Information Science and Engineering, 18(6):981-997, November 2002.
-
P. Urbán, X. Défago, and A. Schiper. Neko: A single environment to simulate and prototype distributed algorithms. In Proc. 15th IEEE Intl. Conf. on Information Networking (ICOIN), pp. 503-511, Beppu City, Japan, January 2001.