Boo é uma linguagem compilada e estática e com uma sintaxe baseada no Python, combinando a clareza da sintaxe do Python com as garantias e desempenhos desejados em uma linguagem estaticamente tipada.
Este artigo ou secção contém uma lista de referências no fim do texto, mas as suas fontes não são claras porque não são citadas no corpo do artigo, o que compromete a confiabilidade das informações. (Outubro de 2010) |
Uma das coisas que mais chama atenção no Boo é o seu compilador extensível. Em diversos estágios durante o processo de compilação, os desenvolvedores podem modificar o processo alterando a forma com que o compilador se comporta.
Boo | |
---|---|
Paradigma | Multiparadigma |
Surgido em | 2003 |
Última versão | 0.9.7 (25 de março de 2013) |
Criado por | Rodrigo Barreto de Oliveira |
Estilo de tipagem | Estática |
Influenciada por | C#, Python |
Influenciou | Fantom, Cobra |
Licença: | BSD |
Extensão do arquivo: | .boo |
Página oficial | boo-lang |
Alguns anos atrás nós mostramos os esforços feitos para tornar o Boo uma linguagem de primeira classe, o principal esforço era fazer com que o Visual Studio oferecesse suporte total a linguagem. Foi então idealizado o projeto da BooLangStudio que aparentemente morreu. Um novo projeto, o Visual Studio Boo plugin agora tomou o lugar do antigo projeto. Esse plugin está nos estágios iniciais, porém já possui algumas funcionalidades que estão prontas para o uso.
A linguagem Boo foi criada em 2003 pelo brasileiro Rodrigo Barreto de Oliveira, conhecido pelo pseudônimo Bamboo, origem do nome da linguagem.
Naquela ocasião, Rodrigo estava frustrado com as linguagens de programação existentes. Embora tivesse experiência no uso de Python e tenha utilizado esta linguagem como base para a criação de Boo, sentia falta de algumas características inerentes às linguagens estaticamente tipadas e da falta do acesso às facilidades da arquitetura .Net. Passou a trabalhar com 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.
Boo se diferencia das outras linguagens de programação pela facilidade 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:
lista = ['a', 'b', 'c', 'd', 'e']
, lista[1:3]
retorna ['b', 'c']
print("Olá, Mundo!")
import System.Windows.Forms f = Form(Text: "Hello, boo!") f.Controls.Add(Button(Text: "Clique-me!", Dock: DockStyle.Fill)) Application.Run(f)
import Gtk Application.Init() window = Window("Olá, Mundo!", DefaultWidth: 200, DefaultHeight: 150) # O programa deverá encerrar-se depois que a janela se fechar window.DeleteEvent += def(): Application.Quit() window.Add(Button("Clique-me!")) window.ShowAll() Application.Run()
def fib(): a as long, b as long = 0, 1 while true: yield b a, b = b, a + b
This article uses material from the Wikipedia Português article Boo, which is released under the Creative Commons Attribution-ShareAlike 3.0 license ("CC BY-SA 3.0"); additional terms may apply (view authors). Conteúdo disponibilizado nos termos da CC BY-SA 4.0, salvo indicação em contrário. Images, videos and audio are available under their respective licenses.
®Wikipedia is a registered trademark of the Wiki Foundation, Inc. Wiki Português (DUHOCTRUNGQUOC.VN) is an independent company and has no affiliation with Wiki Foundation.