[/Band|c00t]

Bandicoot is a programming system with a new set-based programming language, persistency capabilities, and run-time environment. The language is similar to general purpose programming languages where you write functions/methods and access data through variables. Though, in Bandicoot, you always manipulate data in sets using a small set-based algebra (the relational algebra). Here is a small program which manages your book shelf:

rel Books {
    title: string,
    pages: int,
    price: real,
}

shelf: Books;

fn List(): Books
{
    return shelf;
}

fn Append(b: Books)
{
    shelf += b;
}

Here are some of the features:

  • native support for set-based programming using the relational algebra
  • simple syntax for common set-operators: "+" (union), "-" (minus), etc.
  • all functions are automatically exposed via HTTP, e.g. /List, /Append
  • supports persistency via global variables (with transactions and ACID)
  • can run on multiple computers in a distributed mode
  • small binary ~100KB
Join our Google Group or leave your comments on any page.
Latest News (subscribe)

Nov 07 14:42bandicoot v4 released (http://t.co/nOKtsuwa)
Sep 20 18:31gem install rel (Client for the Bandicoot relational algebra database; http://t.co/nCBUEYoq)
Jun 22 19:28New blog post: Running on Multiple Nodes (http://t.co/i2H2bdO)
May 23 19:23V3 has been released and it is available for download. Also, note some site enhancements such as comments (powered by bandicoot).
May 16 14:00Thanks to everyone for coming over and visiting our booth at the #LinuxTag. It was a pleasure to talk to all of you!
© 2011 bandilab.org; feedback at bandilab dot org