Existem bibliotecas Parsing Expression Grammar (PEG) para Javascript ou PHP?

Eu me sinto atraído para o formalismo de gramática de expressão Parsing para descrever linguagens específicas de domínio, mas até agora o código de implementação que eu encontrei foi escrito em idiomas como Java e Haskell que não são amigáveis ​​para web no ambiente de hospedagem compartilhada que minha organização tem que viver com.

Alguém sabe de alguma biblioteca PEG ou PackRat Parser Generators para Javascript ou PHP? É claro que os geradores de código em qualquer idioma que possa produzir Javascript ou o código-fonte do PHP fariam o truque.

Eu escrevi recentemente o PEG.js , o gerador de analisador baseado em PEG para JavaScript. Ele pode ser usado a partir de uma linha de comando ou você pode tentar do seu navegador.

Na verdade, há um para Javascript: OMeta. http://www.tinlizzie.org/ometa/

Também implementei uma versão deste no Python: http://github.com/python-parsley/parsley

php PEG https://github.com/maetl/php-peg

Esta publicação é realmente antiga, mas eu encontrei isso através do google, e deveria ter sido respondida

Language.js :

Language.js é um analisador experimental novo de código aberto baseado em PEG (Parsing Expression Grammar), com a adição especial do operador “Naughty OR” para lidar com erros de uma nova maneira única. Faz uso da memorização para alcançar velocidade linear de análise de tempo

Há também Kouprey para JavaScript, que é um gerador / biblioteca PEG muito fácil de usar.

Olhe para https://github.com/leblancmeneses/NPEG pode ser facilmente convertido em php. A tree Parse é criada com funções anônimas.

Você olhou para ANTLR ? Produz o código lexer e parser, lida com trees de syntax abstratas, permite inserir o código da gramática a ser injetado no código lexer / parser e está disponível para uma variedade de idiomas!

Intereting Posts