[Cascavel-pm] Perl Mobile

Daniel Ruoso daniel em ruoso.com
Terça Junho 26 03:27:06 PDT 2007


Ter, 2007-06-26 às 09:42 +0200, Luis Motta Campos escreveu:
>    Posso indicar o CPAN, especialmente o namespace Palm::
>      http://search.cpan.org/search?query=palm&mode=all

Hmmm... Só tem um problema...

A URL http://www.cpan.org/ports/ não lista Palm OS... O que pode
significar um problema maior do que isso. O problema é que o Palm OS é
um sistema operacional muito estranho. Ele não é multi-tarefa, apesar de
você poder ter várias aplicações abertas ao mesmo tempo. Isso é uma das
partes mais difíceis de entender quando se tenta desenvolver para palm
(a outra é usar o widget toolkit deles que é muito ruim).

Um processo no Palm OS funciona como se o loop de eventos estivesse fora
dele, aliás, na verdade é isso mesmo... O PalmOS não tem interrupções,
não é preemptivo e não sabe fazer nada disso (por isso que é tão fácil
um aplicativo tosco travar o seu palm). O seu programa tem que executar
do início ao fim para cada ciclo de evento (como se fosse um CGI) de
forma que fica um pouco difícil portar qualquer coisa de forma
satisfatória para ele sem ter que re-escrever tudo (por isso não existem
aplicações mainstream portadas para palm).

Considerando a disponibilidade de PDAs baseados em Linux no mercado
hoje, recomendaria sinceramente que, se você tem escolha, não escolha
Palm ou nada baseado em PalmOS. Mas muitas vezes você não tem opção.
Nesse caso, a única forma de fazer coisas decentes para PalmOS é em C,
utilizar Java (que só funciona com a mesma tecnologia de fazer jogos
para celular, ou seja, você provavelmente tem sérias restrições no
acesso ao device) ou qualquer outra coisa vai criar um overhead
detestável para a sua aplicação.

daniel



Mais detalhes sobre a lista de discussão Cascavel-pm