[Cascavel-pm] [OT] Bison, alguém?

Flavio S. Glock fglock em gmail.com
Quinta Janeiro 31 03:20:46 PST 2008


Luis:

Isso pode ser resolvido dividindo o problema em duas etapas: construa
uma "lista" de "item".
Depois, defina "item" como sendo: "person" | "address" | ...

(baseado na minha experiencia com o Parse::Yapp, que pode funcionar
diferente do bison)

-Flavio S. Glock

Em 31/01/08, Luis Motta Campos<luismottacampos em yahoo.co.uk> escreveu:
> Gente, eu estou construindo uma gramática LALR(1) em Bison para
> implementar a RFC2622, e estou com um problema de implementação que
> talvez alguém aqui saiba como resolver.
>
> O que a RFC2822 chama de objeto é uma lista de pares nome-valor, mais ou
> menos assim:
>
> person: <nome-pessoa>
> address: <endereco>
> address: <endereco>
> address: <endereco>
> phone: <telefone>
> phone: <telefone>
> nic-hdl: <nic-handle>
>
> O "objeto" é delimitado por uma linha em branco. Quando encontrar uma
> linha em branco, começa um novo objeto.
>
> Existem atributos (nomes) obrigatórios e opcionais. Por exemplo:
> "person:", "address:", "phone:" e "nic-hdl:" são todos atributos
> obrigatórios. "fax-no:" é opcional.
>
> A ordem dos atributos (exceto o primeiro, "person:") não é garantida, e
> qualquer ordem (contanto que "person:" seja o primeiro) é válida.
>
> O meu problema está exatamente nisso: eu não tenho idéia de como
> implementar uma lista de pares nome-valor sem enforçar a ordem dos
> atributos, usando uma LALR(1).
>
> Alguém pode me dar uma sugestão?
>
> Putamplexos!
> --
> Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer,
> Perl fanatic evangelist, and amateur {cook, photographer}
>
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>


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