Boo (programming language)

This is an old revision of this page, as edited by 24.189.123.128 (talk) at 02:35, 15 June 2015 (Codehaus.org is recently closed, there's no other website so their github should suffice as it provides the most information. Also I'm sure any other articles pointing to codehaus need to be updated as well.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Boo is an object-oriented, statically typed, general-purpose programming language that seeks to make use of the Common Language Infrastructure's support for Unicode, internationalization, and web applications, while using a Python-inspired syntax[1] and a special focus on language and compiler extensibility. Some features of note include type inference, generators, multimethods, optional duck typing, macros, true closures, currying, and first-class functions. Boo has been actively developed since 2003.

Boo
ParadigmObject oriented
Designed byRodrigo B. De Oliveira
DeveloperRodrigo B. De Oliveira
First appeared2003; 22 years ago (2003)
Stable release
0.9.4 / 21 January 2011; 14 years ago (2011-01-21)
Typing disciplinestatic, strong, inferred, duck
Implementation languageC#
PlatformCommon Language Infrastructure (.NET Framework & Mono)
LicenseMIT/BSD style license
Websitegithub.com/bamboo/boo
Influenced by
Python, C#

Boo is free software released under an MIT/BSD–style license. It is compatible with both the Microsoft .NET and Mono frameworks.

Code samples

Hello world program

print "Hello World!"

Fibonacci series generator function

def fib():
    a, b = 0L, 1L       # The 'L's make the numbers double word length (typically 64 bits)
    while true:
        yield b
        a, b = b, a + b

# Print the first 5 numbers in the series:
for index as int, element in zip(range(5), fib()):
    print("${index+1}: ${element}")

See also

References

  1. ^ Rodrigo Barreto de Oliveira (2005). "The boo Programming Language" (PDF). Retrieved February 22, 2009.