FACTOID # 98: Members of the armed forces and the police cannot vote in the Dominican Republic.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Boo (programming language)
Boo
Paradigm Object oriented
Appeared in 2003
Designed by Rodrigo B. De Oliveira
Developer Rodrigo B. De Oliveira
Latest release 0.8.1/ 2008-02-08
Typing discipline static, strong, duck
Major implementations auyu6
Influenced by Python
OS .NET Framework, Mono Runtime
License MIT/BSD style license
Website boo.codehaus.org

Boo is an object oriented, statically typed programming language developed starting in 2003, which seeks to make use of the Common Language Infrastructure support for Unicode, internationalization and web style applications, while using a Python-inspired syntax 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. A programming paradigm is a paradigmatic style of programming (compare with a methodology, which is a paradigmatic style of doing software engineering). ... Bold textObject-oriented analysis and design (OOAD) is a software engineering approach that models a system as a group of interacting objects. ... For other uses, see Software developer (disambiguation). ... A software release refers to the creation and availability of a new version of a computer software product. ... 2008 (MMVIII) is the current year, a leap year that started on Tuesday of the Anno Domini (or common era), in accordance to the Gregorian calendar. ... is the 39th day of the year in the Gregorian calendar. ... In computer science, a type system defines how a programming language classifies values and expressions into types, how it can manipulate those types and how they interact. ... On computer science, a datatype (often simply type) is a name or label for a set of values and some operations which can be performed on that set of values. ... In computing, strongly-typed, when applied to a programming language, is used to describe how the language handles datatypes. ... In computer programming, duck typing is a style of dynamic typing in which an objects current set of methods and properties determines the valid semantics, rather than its inheritance from a particular class. ... Look up Implementation in Wiktionary, the free dictionary. ... Python is a general-purpose, high-level programming language. ... An operating system (OS) is a software that manages computer resources and provides programmers with an interface used to access those resources. ... Microsoft . ... Mono is a project led by Novell (formerly by Ximian) to create an Ecma standard compliant . ... A software license is a legal agreement which may take the form of a proprietary or gratuitous license as well as a memorandum of contract between a producer and a user of computer software. ... The MIT License, also called the X License or the X11 License, originated at the Massachusetts Institute of Technology, is a license for the use of certain types of computer software. ... The BSD daemon BSD licenses represent a family of permissive free software licenses. ... A website (alternatively, web site or Web site) is a collection of Web pages, images, videos or other digital assets that is hosted on one or more web servers, usually accessible via the Internet. ... Bold textObject-oriented analysis and design (OOAD) is a software engineering approach that models a system as a group of interacting objects. ... In computer science, a type system defines how a programming language classifies values and expressions into types, how it can manipulate those types and how they interact. ... A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer. ... Visual overview of the Common Language Infrastructure (CLI) The Common Language Infrastructure (CLI) is an open specification developed by Microsoft that describes the executable code and runtime environment that form the core of the Microsoft . ... The Unicode Standard, Version 5. ... Internationalization and localization are means of adapting products such as publications or software for non-native environments, especially other nations and cultures. ... Python is a general-purpose, high-level programming language. ... Type inference is a feature present in some strongly statically typed programming languages. ... In computer science, a generator is a special routine that can be used to control the iteration behaviour of a loop. ... This article or section should be merged with Multiple dispatch Developers of computer software typically organize source code into named blocks called variously subroutines, procedures, subprograms, functions, or methods. ... In computer programming, duck typing is a style of dynamic typing in which an objects current set of methods and properties determines the valid semantics, rather than its inheritance from a particular class. ... For other uses, see Macro (disambiguation) A macro in computer science is a rule or pattern that specifies how a certain input sequence (often a sequence of characters) should be mapped to an output sequence (also often a sequence of characters) according to a defined procedure. ... In computer science, a closure is a function that is evaluated in an environment containing one or more bound variables. ... This article is about the function transformation technique. ... In computing, a first-class object (also value, entity, and citizen), in the context of a particular programming language, is an entity which can be used in programs without restriction (when compared to other kinds of objects in the same language). ...


Boo is open sourcelicensed under an MIT/BSD style license. Open source refers to projects that are open to the public and which draw on other projects that are freely available to the general public. ... A free software licence is a software licence which grants recipients rights to modify and redistribute the software which would otherwise be prohibited by copyright law. ... The MIT License, also called the X License or the X11 License, originated at the Massachusetts Institute of Technology, is a license for the use of certain types of computer software. ... The BSD daemon BSD licenses represent a family of permissive free software licenses. ...


Boo can be used with Microsoft .NET or Mono. Microsoft . ... Mono is a project led by Novell (formerly by Ximian) to create an Ecma standard compliant . ...

Contents

Code samples

Hello world program

 print "Hello, world!" 

A hello world program is a computer program that prints out Hello, World! on a display device. ...

Fibonacci series generator function

 def fib(): a, b = 0L, 1L #The 'L's make the numbers 64-bit 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}") 

A tiling with squares whose sides are successive Fibonacci numbers in length A Fibonacci spiral, created by drawing arcs connecting the opposite corners of squares in the Fibonacci tiling shown above – see golden spiral In mathematics, the Fibonacci numbers form a sequence defined by the following recurrence relation: That is... In computer science, a generator is a special routine that can be used to control the iteration behaviour of a loop. ...

Basic Windows Form example demonstrating classes, closures, and events

 import System.Windows.Forms from System.Windows.Forms import System.Drawing class MyForm(Form): def constructor(message as string): b = Button(Text: "Click Me") b.Location = Point(100, 50) b.Click += do(): MessageBox.Show(message) self.Controls.Add(b) f = MyForm("you clicked the button!") Application.Run(f) 

In object-oriented programming, a class is a programming language construct used to group related fields and methods. ... In computer science, a closure is a function that is evaluated in an environment containing one or more bound variables. ...

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" 

In computer science, a closure is a function that is evaluated in an environment containing one or more bound variables. ...

See also

Free software Portal
  • IronPython - an implementation of Python for the .NET platform, similar to Jython.
  • Nemerle - a high-level statically-typed programming language for the .NET platform. It offers functional, object-oriented and imperative features as well as macros.
  • Groovy - a language with similar objectives but targeting the Java Platform
  • REBOL - a more mature language sharing common goals.
  • IronRuby

Image File history File links Free_Software_Portal_Logo. ... IronPython is an implementation of the Python programming language, targeting . ... Jython, formerly known as JPython, is an implementation of the Python programming language written in Java. ... Nemerle is a high-level statically-typed programming language for the . ... Groovy is an object-oriented programming language for the Java Platform as an alternative to the Java programming language. ... REBOL, the Relative Expression Based Object Language (pronounced [rebl]), is a data exchange and programming language designed specifically for network communications and distributed computing. ... IronRuby is an implementation of the Ruby programming language targeting Microsoft . ...

External links

  • Official website
Microsoft . ... The software architecture of a program or computing system is the structure or structures of the system, which comprise software components, the externally visible properties of those components, and the relationships between them. ... The Base Class Library (BCL) is a library of types and functionalities available to all languages using the . ... The Common Language Runtime (CLR) is the virtual machine component of Microsofts . ... Code access security, in the Microsoft . ... For the counterpart to assembly language in the Microsoft . ... . ... Visual overview of the Common Language Infrastructure (CLI) The Common Language Infrastructure (CLI) is an open specification developed by Microsoft that describes the executable code and runtime environment that form the core of the Microsoft . ... Visual overview of the Common Language Infrastructure (CLI) The Common Language Infrastructure (CLI) is an open specification developed by Microsoft that describes the executable code and runtime environment that form the core of the Microsoft . ... The Common Type System (CTS) is used by every language built on the . ... Common Intermediate Language (CIL, pronounced either sill or kill) (formerly called Microsoft Intermediate Language or MSIL) is the lowest-level human-readable programming language in the Common Language Infrastructure and in the . ... The Virtual Execution System(VES) provides an environment for executing managed code. ... The title given to this article is incorrect due to technical limitations. ... Visual Basic . ... C++/CLI (Common Language Infrastructure) is the newer language specification due to supersede Managed Extensions for C++. Completely reviewed to simplify the older Managed C++ syntax, it provides much more clarity over code readability than Managed C++. C++/CLI is standardized by ECMA. It is currently only available on Visual... It has been suggested that this article or section be merged with Managed C Plus Plus. ... The J# (pronounced J-sharp) programming language is a transitional language for programmers of Suns Java and Microsofts J++ languages, so they may use their existing knowledge, and applications on Microsofts . ... JScript . ... A# is a port of the Ada programming language to the Microsoft . ... IronLisp is an implementation of the Lisp programming language targeting Microsoft . ... IronPython is an implementation of the Python programming language, targeting . ... IronRuby is an implementation of the Ruby programming language targeting Microsoft . ... Nemerle is a high-level statically-typed programming language for the . ... This article is being considered for deletion in accordance with Wikipedias deletion policy. ... P# is a Prolog (logic programming language) interpreter written for the Common Language Infrastructure. ... Windows PowerShell is an administration focused extensible command line interface (CLI) shell and scripting language product developed by Microsoft. ... In Microsoft Windows terminology, managed code is computer instructions — that is, code — executed by a CLI-compliant virtual machine, such as Microsofts . ... A software framework is a reusable design for a software system (or subsystem). ... This subsystem is a part of . ... This subsystem is a part of . ... This subsystem is a part of . ... It has been suggested that this article or section be merged with Software componentry. ... ADO.NET is a set of computer software components that can be used by programmers to access data and data services. ... The ADO.NET Entity Framework, part of ADO.NET components of the . ... ASP.NET logo ASP.NET is a web application framework marketed by Microsoft that programmers can use to build dynamic web sites, web applications and XML web services. ... ASP.NET AJAX, formerly code-named Atlas, is a set of extensions to ASP.NET developed by Microsoft for implementing Ajax functionality. ... The ASP.NET MVC Framework is a Model-view-controller framework which Microsoft is adding to ASP.NET. It allows an application to be built as a composition of three roles: Model, View and Controller. ... . ... Language intergrated query (LINQ) is a Microsoft project that aims to add a native querying syntax to C# and VB.Net. ... The Windows Cardspace UI This subsystem is a part of . ... This API is a part of . ... Extensible Application Markup Language (XAML, pronounced zammel ()) by Microsoft is a declarative XML-based language used to initialize structured values and objects. ... Deployment of a ClickOnce application ClickOnce is a Microsoft technology for deploying Windows Forms or Windows Presentation Foundation-based software, also called Smart clients. ... The Dynamic Language Runtime (DLR) from Microsoft is a ongoing effort to bring a set of services that run on top of the CLR and provides language services for several different dynamic languages. ... Parallel FX Library (PFX) is a managed concurrency library being developed by a collaboration between Microsoft Research and the CLR team at Microsoft for inclusion with a future revision of the . ... Parallel FX Library (PFX) is a managed concurrency library being developed by a collaboration between Microsoft Research and the CLR team at Microsoft for inclusion with a future revision of the . ... Task Parallel Library (TPL, also referred to as Parallel FX Library) is a managed concurrency library being developed by a collaboration between Microsoft Research and the CLR team at Microsoft for inclusion with a future revision of the . ... Mono is a project led by Novell (formerly by Ximian) to create an Ecma standard compliant . ... The Microsoft . ... The Microsoft . ... . ... DotGNU Portable . ... Microsoft Silverlight is a browser plugin that allows web applications to be developed with features like animation, vector graphics, and audio-video playback - features that characterize a rich internet application. ... The Shared Source Common Language Infrastructure (SSCLI), previously codenamed Rotor, is Microsofts shared source implementation of the CLI, the core of . ... This is a comparison of the C# programming language with the Java programming language. ... The original . ... This is a comparison of the . ... Microsoft Codename Acropolis, available as a release, is a set of tools and components that can be used to build . ... Microsoft Codename Jasper is an ADO.NET incubation project being developed by Microsoft which aims for simpler integration between the data access layer and the presentation layer in an application. ... Microsoft Visual Studio is Microsofts flagship software development product for computer programmers. ...

  Results from FactBites:
 
Boo - Wikipedia, the free encyclopedia (326 words)
Boo is the nickname of Arthur Radley, a character in the novel To Kill A Mockingbird.
Boo is a minor character in the webcomic series Megatokyo and acts as a conscience to Largo - one of the main characters.
Boo is the nickname for the galaxy IC 1029.
Boo programming language - Wikipedia, the free encyclopedia (271 words)
Boo is an object oriented, statically typed programming language developed starting in 2003, which seeks to make use of the Common Language Infrastructure support for Unicode, globalization and web style applications, while using a Python-inspired syntax and a special focus on language and compiler extensibility.
Boo is open source–licensed under an MIT/BSD style license.
Boo can be used together with Microsoft.NET and Mono.
  More results at FactBites »


 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m