Как мне разобрать источник на Haskell в AST на Haskell?

Я пытаюсь разобрать исходный файл на Haskell в AST. Я новичок в парсерах, поэтому я не уверен, как сделать свой собственный. Мне просто интересно, есть ли функция, которая принимает файл и возвращает AST. Я также думал, что это может сработать, чтобы превратить файл в строку, используя readFile и затем анализирую строку, но я до сих пор не знаю, куда идти дальше. Есть какой-то известный способ сделать это? Если нет, то как я могу сделать это сам?

1 ответ

Решение

Попробуйте Language.Haskell.Meta.Parse. Особенно, parseHsModule проанализируем весь модуль для вас. Есть также функции для разбора небольших кусков, такие как parseExp который разбирает выражение.

Другие вопросы по тегам