Pergunta

Encontrei alguns recursos sobre o assunto, mas todos eles exigem uma compreensão profunda do Conversa fiada ou Haskell, nenhum dos quais eu sei.

Foi útil?

Solução

Aqui estão algumas bibliotecas combinadoras de analisadores em linguagens mais convencionais:

Outras dicas

Escrevi 8 entradas de blog longas sobre combinadores de analisadores monádicos em C# e F#;ver aqui para o primeiro.

Veja também FParsec (Parsec para F#)

Existem alguns artigos excelentes na web que descrevem combinadores de analisadores em C#, mas nenhum repositório de origem sustentável, então criei um em:

http://code.google.com/p/sprache/

Alguém com conhecimento sobre combinadores de analisadores provavelmente poderia fazer muito para melhorá-los (por favor, avance se isso soa como você :))

Se você conhece Python, há PyParsing.

Para mim esse o papel foi extremamente útil.É quase neutro em termos de linguagem.Apenas em alguns pequenos lugares eles estão se referindo Gofer.

eu encontrei um artigo interessante sobre a implementação de um combinador de analisador em C#.Também faz referência a alguns artigos mais gerais sobre o assunto.

O artigo da Wikipedia sobre o assunto também tem uma explicação geral do conceito.

Aqui é um link para uma palestra (slides e script) sobre combinadores de analisadores monádicos em C++.

Cay Horstmann tem 4 palestras sobre analisador combinador em Scala, com exercícios. Há um exemplo de análise de DSLs externas no Scala aqui.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top