Domanda

Sto cercando una buona libreria di analisi ocaml che non sia un derivato di flex / bison. Idealmente, vorrei una libreria combinatrice monadica sulla falsariga di parsec, ma non riesco a trovare nulla.

Userei haskell, ma rendere i collegamenti llvm per haskell si sta rivelando più noioso di quanto pensassi inizialmente.

Saluti,

Duane

È stato utile?

Soluzione

Ecco una libreria , tramite Google. (Che ha anche portato questo e this , che elenca diverse librerie che suonano più pertinenti.)

Quando ho scritto un parser combinatore in ML, mi è sembrato piuttosto complicato da usare a causa della restrizione del valore e della valutazione entusiasta, che ti ha costretto a espandere le tue regole grammaticali. Si dice che Ocaml sia più rilassato riguardo alla limitazione del valore, forse forse ti risparmierai un po 'di quel dolore.

Altri suggerimenti

Nel mondo OCaml, parser basati su stream e Camlp4 sono le prossime due alternative più comuni. Entrambi sono stati descritti in dettaglio nei precedenti OCaml Journal .

I combinatori di parser monadici sono relativamente rari in OCaml, soprattutto perché ci sono diverse librerie di livello superiore e molto più efficienti disponibili.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top