The Swarm Framework

Welcome to Swarm!

What is Swarm?

Swarm is a framework allowing the creation of web applications which can scale transparently through a novel portable continuation-based approach. Like Map-Reduce, Swarm follows the maxim "move the computation, not the data". However Swarm takes the concept much further, allowing it to be applied to almost any computation, not just those that can be broken down into map and reduce operations.

In effect, Swarm is the ultimate Platform as a Service, going much further than systems like Google App Engine in relieving the programmer from the difficulties of cloud computing.

Status

Update 2016-12-26: The future of the Scala delimited continuations plugin is uncertain. Fortunately, the excellent Kotlin programming language is implementing something similar in their upcoming 1.1 release, and this is already usable. Swarm's future is therefore likely to involve migrating to Kotlin. This has a number of other advantages as Kotlin is a more pragmatic language than Scala, and while not currently as well known, is very likely to grow rapidly in popularity.

History of Swarm

Swarm was initially proposed by Ian Clarke in this blog post, although the concept has evolved considerably since then.

Contribute!

  1. Sign up for kotlinlang.slack.com if you haven't already
  2. Join the #swarm channel

Read our Wiki.