Boo (programming language)

This is an old revision of this page, as edited by Gwalla (talk | contribs) at 05:34, 9 November 2004 (disambig generator). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Boo is a new (2004) object oriented statically typed programming language for the Common Language Infrastructure with a Python inspired syntax and a special focus on language and compiler extensibility. Some features of note include generators, multimethods, optional duck typing, macros, true closures, currying, and first class functions.

Boo is open source licensed under an MIT/BSD style license and is maintained at http://boo.codehaus.org

Hello World:

print("Hello, world!")

Fibonacci Series generator function:

def fib():
    a as long, b as long = 0, 1
    while true:
        yield b
        a, b = b, a + b

Asynchronous design pattern with a closure:

import System

def run():
    print("executing")

print("started")
result = run.BeginInvoke({ print("called back") })
System.Threading.Thread.Sleep(50ms)
run.EndInvoke(result)

print("done")

Currying:

def plus_a(a as int):
    return { b as int | return a + b }

print plus_a(3)(4)