Tcl
| Tcl | |
|---|---|
![]() |
|
| Paradigma | Imperativo |
| Surgido em | 1988 |
| Última versão | 8.6.0.0b7 (27 de fevreiro de 2012) |
| Criado por | John Ousterhout |
| Estilo de tipagem: | dinamica, implícita e fraca |
| Compiladores | linguagem interpretada |
| Influenciada por | Bourne Shell (sh) |
| Licença: | BSD licenses |
| Página oficial | [1] |
Tcl, sigla de Tool Command Language (Linguagem de Comandos de Ferramentas), é uma linguagem de programação para scripts criada por John Ousterhout, de fácil aprendizagem, mas muito poderosa. Tcl pode ser utilizada numa vasta gama de aplicações, sendo bastante utilizada para a escrita de programas com interface gráfica, onde geralmente se utiliza a sua extensão Tk Toolkit, a interface gráfica padrão para o Tcl (e para outras linguagens de programação).
Tcl é open source e pode correr em diferentes plataformas, como Linux (e outros sistemas operacionais UNIX-like), Microsoft Windows e Mac OS X.
Índice |
História[editar]
Tcl foi criada em 1988 pelo professor John Ousterhout da Universidade da Califórnia, Berkeley. John escreveu um editor (mx) e um emulador (tx) que tinham como linguagem básica o Tcl, ambos criados na época do X10. Naqueles tempos ele já pensava em criar um framework para programas com interface gráfica.
Aplicações[editar]
Tcl foi projetada para ser uma linguagem flexivel com um núcleo pequeno. Tcl tem sido usada quase em tudo desde os servidores web da AOL até o controle de rede da grande emissora de televisão NBC. O próprio site oficial da linguagem roda em um servidor web ecrito em Tcl, o tclhttpd. Ela também pode ser usada como uma linguagem de web convencional. Com a extensão TK é possivel criar diversas GUI robustas. Existem outras aplicações como para Banco de dados e Teste/ Qualidade assegurada.
Exemplos de código[editar]
Programa Olá Mundo[editar]
#!/usr/bin/tclsh puts "Olá, Mundo!"
Commom Commands[editar]
#!/usr/bin/tclsh proc foo { n } { for {set x 0} {$x<$n} {incr x} { puts -nonewline "$x." } } foo 50
Tcl é uma linguagem baseada em comandos. No exemplo, "proc", "for" e "puts" são comandos pré-definidos pela linguagem. Já "foo" é usado como um comando, porém foi definido pelo usuário.
O interpretador é fortemente baseado em interpretação de strings, por isso não seria possível, por exemplo, escrever:
proc bar { n } { puts $n }
Pois o que diz ao interpretador que "vem mais" nas próximas linhas é justamente o "{" no fim da linha atual. O código acima devolveria um erro. Exemplos:
set x 0 # cria uma variável chamada 'x' com valor 0. expr $x * 2 # multiplica x por 2 for {set i 0} {i<50} {incr i} { # for estilo C }
Números perfeitos[editar]
Este é um exemplo de um comando que imprime os 4 primeiros números perfeitos. Para usa-lo basta chama-lo com a quantidade de números perfeitos desejada. Ex: numsPerfeitos 5
#!/usr/bin/tclsh proc numsPerfeitos { n } { set i 0 set numPerfeito 0 while {$i < $n} { incr numPerfeito set somaNum 0 for {set j 1} {$j < $numPerfeito} { incr j} { if {$numPerfeito % $j == 0 } { set somaNum [expr $somaNum + $j] } } if {$somaNum == $numPerfeito} { puts $numPerfeito incr i } } } numsPerfeitos 4
Ligações externas[editar]
- Página oficial (em inglês)
- Wiki oficial da Tcl/Tk (em inglês)
- Introdução à Tcl (em inglês)
- IDE (em inglês)
