Boo: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Desfeita a edição 20814057 de Ricvelozo (discussão | contribs)
Linha 2:
|nome = Boo
|logotipo = [[Ficheiro:BooLogo.png]]
|paradigma = [[OrientaçãoMultiparadigma: orientada a objeto, imperativa, funcional]]
|ano = [[2003]]
|ultima_versao = 0.9.3
Linha 8:
|criador = Rodrigo Barreto de Oliveira
|tipagem = Estática
|compiladores = booc, booi (interpretador) e booish (interpretador com shell)
|dialetos =
|influenciada_por = [[C Sharp|C#Python]], [[PythonC Sharp|C#]]
|influenciou = [[Fantom]]
|licença = [[Licença MIT|MIT]] / [[Licença BSD|BSD]]
Linha 20:
 
== História ==
necessidadesA específicas.linguagem Boo foi criada Foiem desenvolvida2003 pelo brasileiro Rodrigo Barreto de Oliveira, conhecido sob o pseudônimo Bamboo, origem do nome da linguagem.
A linguagem Boo nasceu em 2003 devido à frustração do criador em desenvolver sistemas em Python e C# pois eram linguagens de códigos extensos. Ele desejava uma linguagem que suportasse suas próprias idealizações, que suportasse um compilador extensível e pudesse ser modificada por programadores de acordo com as suas
Naquela ocasião, Rodrigo estava frustrado com as linguagens de programação existentes. Embora tivesse experiência e gostasse de Python e tenha utilizado esta linguagem como base para a criação de Boo, sentia falta de algumas facilidades inerentes às linguagens estaticamente tipadas e da falta do acesso às facilidades da arquitetura .Net. Passou a utilizar C#, para poder utilizar o framework .Net, mas ficou mais insatisfeito ainda pela baixa produtividade e pela falta de prazer no uso desta linguagem. Ele desejava uma linguagem produtiva, que suportasse suas próprias idealizações, que suportasse um compilador extensível e pudesse ser modificada por programadores de acordo com as suas
necessidades específicas. Foi desenvolvida pelo brasileiro Rodrigo Barreto de Oliveira, conhecido sob o pseudônimo Bamboo, origem do nome da linguagem.
necessidades específicas.
 
== Características ==
Boo se diferencia das outras linguagens de scriptprogramação porpela uma única característica: Facilidadefacilidade para criar extensões. Ele tem um pipeline de compilação extensível, ou seja, você pode adicionar as suas características no compilador do Boo.
Algumas das principais características:
* Inferência de tipos: o compilador identifica o tipo das variáveis e funções e faz a declaração automática.
 
* Funções como objetos
* Duck Typing: Se algo caminha como um pato e faz quack como um pato então deve ser um pato.
* Closures
* Interpretador Interativointerativo: Semelhantesemelhante ao Python.
* Slicing: Dadofatiamento quede Llistas; é umase lista com= 40['a', elementos'b', você'c', pode'd', fazer'e'], lista[1:3] Lretorna [10:30'b', 'c'].
* Macros: Lembra as macros do C + +. É utilizado para simplificação de código.
* String Interpolationinterpolation: Manipulação de Strings semelhante ao velocity.
* Generators: formas diferentes de escrever laços.
 
== Exemplos de Códigos ==