Я собираюсь написать парсер verilog (или vhdl) и сделать много манипуляций (вроде преобразований) проанализированных данных. Я намерен разбирать действительно большие файлы (полный дизайн Verilog, размером до 10K строк), и я в конечном итоге поддержу большую часть Verilog. Я не против ввода текста, но я не хочу переписывать какую-либо часть кода всякий раз, когда я добавляю поддержку некоторого другого правила.
В Haskell, какую библиотеку вы бы порекомендовали? Я знаю Haskell и использовал Happy before (чтобы играть). Я считаю, что есть возможности использования Parsec для преобразования анализируемой строки в код (что является большим плюсом). У меня нет опыта работы с uu-paringlib.
Итак, чтобы разобрать полную грамматику verilog/VHDL, какую из них рекомендуется? Моя главная забота - это легкость и "правильность", с которыми я могу манипулировать анализируемыми данными по моей прихоти. Скорость не является основной задачей.