Boo (programovací jazyk)

Boo
Paradigmaobjektově orientovaný
Vznik2003
Hlavní implementaceC#
Ovlivněn jazykyC#, Python
Ovlivnil jazykyVala
LicenceBSD 3-Clause[1]
Webboo-lang.org

Boo je objektově orientovaný, staticky typovaný programovací jazyk. Jeho vývoj začal v roce 2003 v souvislosti se vznikem Common Language Infrastructure. Snaží se o využití podpory Unicode, možností tvorby vícejazyčných aplikací (internationalization) a webových aplikací. Jeho syntaxe byla inspirována jazykem Python a zaměřuje se navíc na rozšiřitelnost jazyka a překladače.

Mezi základní rysy jazyka patří:

  • podpora .NET objektového modelu a typového systému (oproti C# je omezena především podpora generik)
  • výrazné funkcionální rysy (stručné uzávěry à la Smalltalk, seznamové komprehenze, metody jsou first-class hodnoty)
  • automatické odvození typů (u lokálních proměnných, datových členů a návratových hodnot)
  • přímá podpora dynamického typování (pseudotyp duck)
  • makroprogramování na vysoké úrovni abstrakce (souvisí s rozšiřitelností překladače)

Open source licence ve stylu MIT/BSD.

Boo může být použit na platformách Microsoft .NET nebo Mono.

Ukázky zdrojového kódu

Hello world program

 print "Hello, world!"

Faktoriál

import System // pouzivame jmenny prostor System

a as int = int.Parse(gets()) // nacitame do a cislo
fak as int = a

for i in range(a-1, 1,-1 ): // prochazime zadany rozsah
   fak *= i 
print "${fak}" // zobrazime hodnotu promenne fak

Reference

  1. license.txt [online]. GitHub [cit. 2018-05-25]. Dostupné online. (anglicky) 

Externí odkazy

  • Domovská stránka Boo
Programovací jazyky
abecední seznam programovacích jazyků
multiparadigmatické
Ada • C++Common Lisp • D • F# • Go • Oberon • PerlPHPPythonRuby • Rust • Scala • Swift • Tcl (Tk) • Vala
strukturované (procedurální)
AWK • C • COBOLDCL • Forth • FortranLuaModula-2 / Modula-3 • Pascal • PawnPL/SQL
objektové
BETA • Boo • C# • Eiffel • Java (Groovy, Kotlin) • JavaScriptObject PascalObjective-CSmalltalkVB.NET
funkcionální
Clean • Ceylon • Erlang • Haskell • J • LispWolfram Language / Mathematica • Miranda • OCamlScheme
dotazovací
LINQSPARQLSQLXQueryXSL (XSLTXSL-FOXPath)
logické
Gödel • Prolog
výukové
Baltazar • Baltík • Karel • Kodu Game Lab • Logo • Microsoft Small Basic • Petr • Scratch
ezoterické
BefungeBrainfuckHQ9+MalbolgeOok!PietWhitespace
historické
ALGOL • APL • B • BASICCPL (BCPL) • J • MUMPSPL/ISimula 67SNOBOL
další
ABAPAppleScriptColdFusionJSA • Julia • MATLAB • R • Visual Basic (VBScript) • VimscriptVisual FoxPro
skriptovací/strojový kódkompilované/interpretované • interaktivní/dávkovéWYSIWYG