Boo (programming language)
Page Module:Message box/ambox.css has no content.
This article needs additional citations for verification. (July 2011) |
Page Module:Infobox/styles.css has no content.
| Boo | |
|---|---|
| Lua error in package.lua at line 80: module 'Module:InfoboxImage/data' not found. | |
| Paradigm | Object oriented |
| Designed by | Rodrigo B. De Oliveira |
| Developer | Mason Wheeler |
| First appeared | 2003 |
| Template:Infobox software/simple | |
| Typing discipline | static, strong, inferred, duck |
| Implementation language | C# |
| Platform | Common Language Infrastructure (.NET Framework & Mono)/ |
| License | BSD 3-Clause[1] |
| Website | github |
| 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, its designer), until official support was dropped in 2014 due to the small userbase.[3] The Boo Compiler was removed from the engine in 2017.[4] Boo has since been abandoned by De Oliveira, with development being taken over by Mason Wheeler.[5]
Boo is free software released under the BSD 3-Clause license. It is compatible with the Microsoft .NET and Mono frameworks.
Syntax
Page Module:Message box/ambox.css has no content.
This section may need to be rewritten to comply with Wikipedia's quality standards. (May 2023) |
print("Hello World")
import System.Collections.Generic
def fib() as IEnumerable[int]:
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 as int in zip(range(5) as IEnumerable[int], fib() as IEnumerable[int]):
print("${index+1}: ${element}")
See also
Lua error in mw.title.lua at line 404: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').
References
Page Template:Reflist/styles.css has no content.
- ^ Page Module:Citation/CS1/styles.css has no content."license.txt". github.com. Retrieved August 5, 2015.
- ^ Page Module:Citation/CS1/styles.css has no content.Rodrigo Barreto de Oliveira (2005). "The boo Programming Language" (PDF). Archived from the original (PDF) on February 6, 2009. Retrieved February 22, 2009.
- ^ Page Module:Citation/CS1/styles.css has no content.aleksandr (September 3, 2014). "Documentation, Unity scripting languages and you". Unity Blogs.
- ^ Page Module:Citation/CS1/styles.css has no content.Richard Fine (August 11, 2017). "UnityScript's long ride off into the sunset". Unity Blogs.
- ^ Page Module:Citation/CS1/styles.css has no content."State of Boo · Issue #201 · boo-lang/boo". GitHub. October 2, 2019. Retrieved January 19, 2023.
External links
- Official website
- How To Think Like a Computer Scientist: Learning to Program with Boo
- Boo Succinctly Revealed
- Bootorial
Lua error in package.lua at line 80: module 'Module:Navbox/configuration' not found.