=tit= Navegante =Breve descrição * CGI a funcionar como proxy * navegante = DSL / compilador * Ingredientes para criar um exemplo (htsp) nome - nome do serviço (path da CGI) título - título da CGI f - função de processamento das páginas feedback final - função de resumo desc - html de apresentação init - função de inicialização do estado ... * compilar: navegante htsp =Exemplo: proxy para análise ortográfica * definição cginame(/home/jj/public_html/bin/htsp) formtitle(Análise ortográfica com Jspell Navegante) feedback(spellend) f(spellit) desc(spelldesc1) init(jinit) ## sub spellend{ h3("Palavras desconhecidas"). small(ul(li([map{"$_ - $estado{$_}"} sort {$estado{$b} <=> $estado{$a}} keys %estado]))) } sub spelldesc1{ h4("Breve descrição:"). } sub spellit{ my $a=shift; $a =~ s{(\w+)((?:-\w+)*)}{if($2){ apc("$1$2")} else { ap($1)}}ge; } sub ap{ # simple word analysis my $p=shift; if( ig($p) || $jsp->fea($p)){$p} elsif($p !~ /[^a-zA-Z]/ && $jspen->fea($p)){m_eng($p)} else{ $estado{$p}++; m_error($p) } } =Exemplo: funcionamento * Começar por um URL fornecido (com estado vazio) * Navegar juntando as palavras desconhecidas * G - obtem o resumo: conjunto das palavras desconhecidas acumuladas... L