Skip to content
Paul Schoenfelder edited this page Aug 15, 2013 · 2 revisions

General

What is Swarm?

Swarm is a software framework designed to allow programmers to write software which runs across multiple computers in a convenient way. It is implemented in the Scala programming language.

Why are you using Scala?

The main reason is that Scala 2.9 supports PortableContinuations, which is actually a very rare feature in a programming language (not present in Haskell, Ruby, Python, Java, or C++).

Other advantages of Scala are:

  • It compiles to Java bytecode, which means:
    • Its fast (competitive with C, Haskell, and other compiled languages)
    • It already has a large set of libraries
    • It can run on almost any operating system
  • Its concise, comparable to Ruby, much better than Java
  • It supports functional programming constructs like closures

Did you know that there are other projects called "Swarm"?

Yes we did. We do not believe that 100% uniqueness is a prerequisite for a project name. Remember that the word "swarm" has been in use for over a thousand years, it wasn't invented by any software project!

Our opinion (born of painful past experience) is that it is better to have a good non-unique name than a bad unique name. Of course, if someone can suggest a good unique name, we'll give it serious consideration.