Jump to content

Boo (programming language)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Mister Mormon (talk | contribs) at 01:18, 3 March 2016 (add Genie influenced lang). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Boo
ParadigmObject oriented
Designed byRodrigo B. De Oliveira
DeveloperRodrigo B. De Oliveira
First appeared2003; 21 years ago (2003)
Stable release
0.9.4 / 21 January 2011; 13 years ago (2011-01-21)
Typing disciplinestatic, strong, inferred, duck
Implementation languageC#
PlatformCommon Language Infrastructure (.NET Framework & Mono)/
LicenseBSD 3-Clause[1]
Websitegithub.com/boo-lang, boo-lang.org
Influenced by
Python, C#
Influenced
Genie, Vala

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[2] 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 is free software released under the BSD 3-Clause 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. ^ "license.txt". github.com. Retrieved August 5, 2015.
  2. ^ Rodrigo Barreto de Oliveira (2005). "The boo Programming Language" (PDF). Retrieved February 22, 2009.