[imagem de um Admirável Mundo GNU]
Admirável Mundo GNU - Número 30
Copyright © 2001 Georg C. F. Greve <greve@gnu.org>
Traduzido para o português por Hilton Fernandes <fernandesh@yahoo.com>
Revisado por Fernando Lozano <fernando@lozano.eti.br>
A declaração de permissão está abaixo.

[DE | EN | FR | JA | ES | KO | PT]

Bem-vindo a mais um número da Admirável Mundo GNU, de Georg Greve. Neste mês será mostrada uma ampla variedade de tópicos, com uma seção experimental no final. Ela foi criada junto com Bernhard Reiter. Mas vamos começar com a parte técnica.

TINY

O objetivo do TINY [5] é ser uma distribuição mínima do GNU/Linux. Ela foi criada por Odile Bénassy, e sua equipe hoje conta também com Jean-François Martinez, Mathieu Roy e Roger Dingledine. A sigla TINY significa "'Tis Independence N'Yet", ou "Ainda não é Independência". É um trocadilho com "Independence Linux", o projeto principal de Jean-François Martinez.

O projeto foi motivado pela experiência pessoal de um parente de Odile, que tentou introduzir o GNU/Linux em sua escola, e na idéia de dar aos países em desenvolvimento uma chance de participar da era da informação, e permitir que eles se beneficiem do Software Livre. Para atingir isto, a meta primária foi manter baixas as exigências de hardware. O mínimo atual é um 386 DX 33 sem disco rígido.

É claro que os países em desenvolvimento têm muitos outros problemas, e, mesmo que se deixe eles de lado, sua falta de infraestrutura técnica cria problemas. Não só faltam conexões com a Internet, como os discos flexíveis não resistem ao clima, e muitas vezes não há nem mesmo eletricidade.

Mas existem programas assistenciais que levam a eletricidade e linhas telefônicas a áreas remotas. Odile conversou com cientistas e médicos que auxiliam, como voluntários, em tais programas para adaptar a TINY a essa realidade.

O TINY é baseado no Slackware 4.0, e usa a glibc2, e o kernel 2.2. A licença da distribição é a Licença Geral Pública do GNU (GPL), é claro. Diferentemente de algumas distribuições minimais, o TINY é completamente usável, e está pronto para o uso diário. Portanto, TINY também deve interessar as pessoas que procuram um distribuição mínima.

A distribuição pode ser instalada com sucesso, como mostram mensagens em seis diferentes línguas em sua página inicial [5]. Mas ainda são desejáveis uma documentação menos concisa, e uma lista mais longa e melhor mantida de aplicativos suportados.

Devido a uma aguda falta de tempo, o projeto está atualmente suspenso. Falta também o feedback dos países em desenvolvimento. Por isto, a equipe atual gostaria de passar o projeto para outro grupo de pessoas, a quem eles poderiam dar todo apoio e suporte possível.

Se você estiver interessado a ajudar os outros a se ajudarem, o TINY pode ser um bom começo. Mas mesmo que você esteja apenas procurando uma distribuição mínima, vale a pena dar uma olhada no TINY.

GNU TeXmacs

O projeto GNU TeXmacs [6] trabalha em um Software Livre que é um editor de textos científicos WYSIWYG (what you see is what you get). Como sugere o nome, Joris van der Hoeven, o autor do GNU TeXmacs, foi inspirado pelo GNU EMACS e pelo LaTeX.

Diferentemente do projeto Lyx [7], que parece similar à primeira vista, ele não é um front end do LaTeX, mas um projeto independente. A inspiração do LaTeX foi em termos de qualidade de formatação para impressão, ou typesetting, e capacidade de formatação de expressões matemáticas, que é uma área para a qual o LaTeX oferece indubitavelmente a melhor solução. O GNU TeXmacs também usa as fontes do TeX, e tem filtros de importação e exportação para documentos TeX/LaTeX.

A inspiração do EMACS foi principalmente em termos de extensibilidade. O GNU/TeXmacs foi escrito em C++, ujsando Guile/Scheme como linguagem de extensão. A interface com o usuário, e o próprio editor podem ser personalizados/extendidos através de comandos Guile.

O GNU TeXmacs também permite realizar cálculos científicos diretamente, através de interfaces com Maxima, Pari GP, GTybalt, Yacas, Macaulay 2, Mupad e Reduce. A interface com o Scilab deve em breve estar usável. Acrescentar mais interfaces é relativamente simples.

Combinado com extensões voltadas a torná-lo um editor XML completo, o GNU TeXmacs oferece possibilidades interessantes para coisas como documentos matemáticos interativos na Internet.

Graças a a sua qualidade de formatação para impressão (ou typesetting), a possibilidade de documentos estruturados, e o potencial para macros dinâmicos e arquivos de estilo, o GNU TeXmacs oferece muitas possibilidades, especialmente para o usuário científico.

O projeto está à beira da versão 1.0, depois de Joris Van Der Hoeven, Andrey Grozin, Thomas Rohwer e outros terem trabalhado nele por cerca de quatro anos. Os problemas atuais são alguns recursos incompletamente implementados, e filtros LaTeX que ainda podem ser melhorados. Além disso, a documentação ainda é muito concisa.

Os planos imediatos são resolver esses problemas e liberar a versão 1.0. O suporte a planilhas e as extensões XML/HTML são os próximos passos. Planos para longo prazo são portá-lo para plataformas não Unix, e uma parte para desenhos técnicos.

Qualquer forma de ajuda é bem-vinda: de documentação, traduções, escrita de filtros, portes para outras plataformas e suporte a GNOMe, até a tornar o GNU TeXmacs mais conhecido e usado.

CD-ROM Control

Como os pequenos projetos têm sido um pouco negligenciados, é hora de apresentar aqui um deles.

CD-ROM Control [8], criada por Paul Millar, é um pequeno aplicativo para, como diz o nome, controlar o CD-ROM. Ele foi escrito em Tcl/Tk, com uma pequena parte em C. Além do display de status, ele oferece formas fáceis de se montar/desmontar/ejetar um CD-ROM através de cliques de mouse. A GUI pode ser alternada entre Tk e GTK+.

O recurso especial do CD-ROM Control é o autoinício, ou autostart, que permite iniciar automaticamente um gerenciador de gráfico de arquivos, ou um browser da Web, ou aplicativo de áudo, quando é inserido um CD.

Os desktops integrados oferecem parte desta funcionalidade, mas nem todos os gerenciadores de janelas a possuem, e é por isto que este projeto pode interessar a alguns usuários.

Saxogram

Saxogram [9], criado por Matt Dunford, é o projeto mais incomum deste número. O nome é derivado de Saxo Grammaticus, um historiador dinamarquês não muito conhecido, cujos relatos são uma referência remota do Hamlet de Shakespeare. Isto sugere que o projeto é de alguma forma relacionado à literatura.

Saxogram permite criar uma lista de vocabulário em línguas estrangeiras, para facilitar o aprendizado de uma nova língua. Como muitos antes dele, Matt aprendeu Latim e Grego e, quando lia, tinha de consultar muitas palavras. Quando descobriu um dicionário de Latim [10] na Web, ele começou a trabalhar no Saxogram.

Saxogram lê o documento e automaticamente procura cada palavra em um dicionário. A saída é uma lista de todas palavras encontradas, junto com sua explicação. À medida que faz isto, Saxogram trata com sucesso de palavras conjugadas e declinadas.

Um ponto nevrálgico é a acessibilidade de dicionários, pois os dicionários livres são raros. Apesar do "Internet Dictionary Project", ou Projeto Dicionários na Internet [11], trabalhar nisso, os dicionários ainda não são suficientemente estáveis. O dicionário on-line LEO [12] é de limitada ajuda, pois ele pode apenas traduzir entre inglês e alemão. No que se refere a dicionários do grego, Matt não encontrou nenhum, e gostaria muito que alguém lhe indicasse um.

O programa foi escrito em Python, e é distribuído sob a Licença Geral Pública do GNU (GPL). Seu problema principal é a velocidade de execução, devido a muitas expressões regulares e muitos acessos a disco. Os autores não tinham a velocidade de execução em mente quando escreveram o aplicativo. A solução deste problema tem uma prioridade muito alta na lista de tarefas de desenvolvimento.

São correntemente suportados o alemão, latim e um pouco de italiano, enquanto que a linguagem de trabalho é o inglês. Outras metas de desenvolvimento são acrescentar outras línguas; e também a criação de uma GUI, ou interface gráfica com o usuário.

O mais importante para futuro desenvolvimento é ter mais testadores e dicionários. As pessoas interessadas devem entrar em contato.

GNU libiconv

A GNU libiconv [13] é uma bilioteca de conversão de conjuntos de caracteres. Através da função iconv(), ela oferece aos programas a funcionalidade da conversão de documentos entre diferentes conjuntos de caracteres.

Algumas palavras de background: tradicionalmente, o conjunto de caracteres contém 256 valores, cada um dos quais representa uma letra. Quando se lembra das línguas asiáticas, ou de especificidades como o trema em alemão, ou do caracter para o Euro, fica óbvio que 256 valores não são suficientes para representar cada letra deste planeta.

Por isso, pessoas de diferentes regiões de línguas criaram conjuntos de caracteres modificados que contém as letras da região. Devido a isso, é ambígua a relação entre cada valor e uma letra, pois depende da área da língua. Por isso, a área de língua selecionada é especificada pela chamada "codificação".

Para internacionalizar um programa adequadamente, o programa deve ser capaz de converter conjuntos de caracteres entre si. Para todos programas de processamento de texto, este é um requisito básico.

Ulrich Drepper já havia tentado criar uma solução padrão para este problema há cerca de dois anos, através da glibc -- mas devido a problemas de portabilidade, a solução não foi anexada à glibc, o que resultou na retirada das bibliotecas de conversão de caracteres. Bruno Haible tenta alterar esse quadro através da libiconv.

Libiconv fornece a função iconv() já mencionada da mesma forma que ela é fornecida pela glibc 2.2. Libiconv é portável, rápida e autônoma, o que permite que seja usada para fornecer a funcionalidade do iconv() a todos os sistemas sem a glibc 2.2.

Os programadores podem agora usar a iconv() sem medo de perder a portabilidade de seus programas; e em particular, os autores de programas de e-mail devem fazer isto, pois muitos dos clientes de e-mail ainda não lidam corretamente com as extensões do MIME.

Como a glibc, libiconv é coberta pela Licença Pública Menos Geral do GNU (LGPL). Por isso ela pode ser ligada a programas proprietários, caso seja necessário. Espera-se que isto resolva os problemas de conversão de todo mundo.

Uma funcionalidade interessante da libiconv é seu recurso de transliteração. Um caracter que não exista mo conjunto de caracteres de destino pode ser aproximado por um ou mais caracteres similares, se o recurso "//TRANSLIT" for requisitado.

Mozart/Oz

Mozart/Oz [14] é uma interessante plataforma de desenvolvimento de software, sobre a qual eu gostaria de dizer algumas palavras. Uma vez que uma descrição completa de todos aspectos excederia o tamanho desta seção, tentarei apenas indicar alguns pontos que darão aos desenvolvedores sobre o tema uma primeira idéia.

Mozart foi iniciado em 1991, no projeto europeu ACCLAIM, e foi desenvolvido através de esforços cooperativos sob uma licença similar à do X11. Apesar da licença certamente não ser a melhor, ele se qualifica como Software Livre.

Mozart é uma plataforma de desenvolvimento para aplicativos distribuídos inteligentes. Particularmente a computação distribuída é um ponto forte de Mozart, pois ela torna a rede transparente. Além disso, ela suporta múltiplos paradigmas: programação concorrente através de threads, ou "linhas de execução", leves - é possível ter milhares de threads por aplicativo -, além de agentes móveis, e mais outros.

A máquina virtual do Oz é muito portável e roda em quase todos os derivativos do Unix, assim como no MS Windows. Para a interface com o usuário, ele oferece uma biblioteca orientada ao objeto com uma interface de alto nível muito bem integrada ao Tcl/Tk.

O projeto já é usável, e seu maior problema são os desenvolvedores que têm que perder seus vícios antidos. Mas é claro que algumas coisas ainda têm de ser trabalhadas.

São planos para o futuro: melhorar a confiabilidade, segurança e transparência da rede, bem como acrescentar mais ferramentas.

O Consórcio Mozart pode usar ajuda, especialmente na forma de uma IDE para Windows. A IDE atual é baseada no GNU EMACS, que não satisfaz todos os gostos. Existe também um porte para Macintosh sendo trabalhado - mas está andando muito devagar, e a qualquer ajuda seria bem-vinda.

Caso você se interesse em dar uma olhada melhor no Mozart, consulte sua página inicial [14].

Software Livre em 3D?

Esta seção foi iniciada e até mesmo cunhada por Bernhard Reiter, que os antigos leitores da Admirável Mundo GNU conhecem pela seção GRASS GIS [15] do número 14. Como o representante alemão na FSF Europa, e co-fundador da Intevation GmbH, uma companhia que trabalha apenas com e em Software Livre, ele passa muito tempo usando Software Livre.

Os resultados de uma pesquisa na semana passada por uma ferramenta de Software Livre para a modelagem em 3D foram insatisfatórios, e isso é interessante.

O modelamento em 3D é um tópico muito interessante e importante, e também foi devido a ele que o último Prêmio da FSF foi dado para Brian Paul, por seu trabalho na biblioteca gráfica de 3D chamada Mesa. Mas não há ainda ferramentas de Software Livre para modelagem totalmente desenvolvidas; isto provavelmente se deve a duas razões.

Antes de mais nada, não foi possível encontrar uma página da Web que desse um bom panorama sobre o Software de 3D Livre. Em geral, nem mesmo projetos relacionados parecem se conhecer.

Além disso, são disponíveis produtos proprietários a um preço aparentemente baixo. Eles aparentemente são uma base eficiente para o desenvolvimento. Os usuários são seduzidos pelo baixo preço inicial, e não percebem que este passo faz com que seja impossível que seu software seja mantido no futuro.

Como diz Bernhard: "Este é um clássico exemplo onde o pragmatismo e compromissos prematuros em termos de liberdade de software desaceleram toda uma área de software; também porque isso retirou a pressão pela criação de soluções livres".

Especialmente através das redes, qualquer não-programador pode focar o desenvolvimento de toda uma área, como Dave Phillips demonstrou com sua página "Sound and MIDI Software for GNU/Linux", ou "Software para Som e MIDI para GNU/Linux" [16]. Uma página na Web comparável sobre modelagem 3D com Software Livre seria uma contribuição substancial a essa área.

Por hoje chega

É suficiente para este número da Admirável Mundo GNU. Espero ter oferecido idéias interessantes e, como de hábito, peço que enviem comentários, perguntas, idéias e projetos interessantes para o endereço usual. Talvez até mesmo informações sobre algum Software Livre da área de 3D.

Informações
[1] Enviem idéias, comentários e questões para Admirável Mundo GNU <column@brave-gnu-world.org>
[2] Página inicial do Projeto GNU http://www.gnu.org/home.pt.html
[3] Página inicial da Admirável Mundo GNU, de Georg GReve http://brave-gnu-world.org/
[4] "We run GNU" initiative http://www.gnu.org/brave-gnu-world/rungnu/rungnu.pt.html
[5] Página inicial da distribuição GNU/Linux TINY http://tiny.seul.org/de/
[6] Página inicial do GNU TeXmacs http://www.texmacs.org
[7] Página inicial do LyX http://www.lyx.org
[8] Página inicial do CD-ROM Control http://sourceforge.net/projects/crcontrol
[9] Página inicial do Saxogram http://saxogram.sourceforge.net/
[10] Online Latin Dictionary, ou "Dicionário Online de Latim" http://king.tidbits.com/matt/LatinDictReadMe.html
[11] The "Internet Dictionary Project", ou "Projeto Dicionário na Internet" http://www.june29.com/IDP/
[12] Dicionário Inglês/Alemão LEO http://dict.leo.org
[13] Página inicial da GNU libiconv http://clisp.cons.org/~haible/packages-libiconv.html
[14] Página inicial do Mozart/Oz http://www.mozart-oz.org
[15] Admirável Mundo GNU, número 13 http://www.gnu.org/brave-gnu-world/issue-14.en.html
[16] "Sound & MIDI Software for GNU/Linux", ou "Software de Som & MIDI para GNU/Linux" http://sound.condorow.net

[ Número anterior | Página Inicial da Admirável Mundo GNU | Próximo número ]

Retornar à Página inicial do GNU.

Envie consultas & questões sobre a FSF & o GNU para gnu@gnu.org.
Existem outras formas de contactar a FSF.

Envie comentários sobre a Admirável Mundo GNU, de Georg Greve (em inglês ou alemão) para column@gnu.org,
envie comentários sobre estas páginas na web para webmasters@www.gnu.org,
envie outras questões para gnu@gnu.org.

Copyright (C) 2001 Georg C. F. Greve
Tradução para o português por H. Fernandes e Fernando Lozano

É dada permissão para se fazer e distribuir cópias literais deste transcrito, desde que o copyright e este aviso de permissão sejam mostrados.

Última modificação: $Date: 2001/09/16 18:52:31 $ $Author: gero $