Boo (programming language)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Boo
BooLogo.png
ParadigmObject oriented
Designed byRodrigo B. De Oliveira
DeveloperRodrigo B. De Oliveira
First appeared2003; 15 years ago (2003)
Stable release
0.9.7 / 25 March 2013; 5 years ago (2013-03-25)
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
C#, Python
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 was one of the three scripting languages for the Unity game engine (Unity Technologies employed De Oliveira), until it was dropped in 2014 due to the small userbase.[3]

Boo is free software released under the BSD 3-Clause license. It is compatible with the Microsoft .NET and Mono frameworks.

Code samples[edit]

Hello world program[edit]

print "Hello World!"

Fibonacci series generator function[edit]

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[edit]

References[edit]

  1. ^ "license.txt". github.com. Retrieved August 5, 2015.
  2. ^ Rodrigo Barreto de Oliveira (2005). "The boo Programming Language" (PDF). Archived from the original (PDF) on February 6, 2009. Retrieved February 22, 2009.
  3. ^ aleksandr (September 3, 2014). "Documentation, Unity scripting languages and you". Unity Blogs.

External links[edit]