Pergunta

Perl tem sido uma das minhas ferramentas de linguagem de programação por anos e anos. As gramas do Perl 6 parecem um ótimo recurso de linguagem. Eu gostaria de saber se alguém começou algo assim para Ruby.

Foi útil?

Solução

Não. E, como as gramáticas perl6 são um Língua recurso, e Ruby não permite que o idioma seja estendido, na verdade é impossível Para implementar isso em um "addon".

No entanto, existem inúmeras bibliotecas para o Ruby que implementam diferentes tipos de sistemas de análise ou gramática. A biblioteca padrão já contém racc, que é um gerador de pastor Lalr (1) (comparável e um tanto compatível com o venerável yacc). Então há o Antlr O gerador de analisador, que tem um back -end de rubi (embora eu não tenha certeza se isso realmente funciona).

A coisa mais próxima das gramáticas perl6 em Ruby seria o Projeto Ruby-Ometa (certifique -se de também dar uma olhada Ryan Davis's Fork), que infelizmente ainda está em desenvolvimento. (Ou melhor, não está mais sob desenvolvimento ativo.)

Então, mantendo as coisas que realmente existe, Eu recomendo que você dê uma olhada no Projeto Gramática e Treetop.

Outras dicas

Se você quiser usar as gramáticas Perl 6 reais em Ruby, sua melhor aposta será Cardeal, um compilador de rubi no papagaio. Atualmente, está inacabado e muito lento, mas tenho muita esperança de ser uma implementação viável do Ruby eventualmente. Atualmente, é principalmente inativo, aguardando algumas alterações de infraestrutura no papagaio para suportar a velocidade de análise melhorada e os recursos adicionais.

Não conheço nada semelhante para Ruby.

No entanto, há algo semelhante para Perl5, veja Regexp::Grammars

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