Size: a a a

2020 May 06

N

Natalya in Haskell
Здравствуйте. Я новичок и мой курсовой проект заключается в написании интерпретатора для PCF(язык на основе лямбда выражений). Подскажите,пожалуйста,что лучше использовать для парсинга в haskell?
источник

MK

Maxim Koltsov in Haskell
@Kakadu18 опять твои студенты?)
источник

K

Kakadu in Haskell
Нет
источник

MK

Maxim Koltsov in Haskell
Natalya
Здравствуйте. Я новичок и мой курсовой проект заключается в написании интерпретатора для PCF(язык на основе лямбда выражений). Подскажите,пожалуйста,что лучше использовать для парсинга в haskell?
megaparsec или attoparsec
источник

K

Kakadu in Haskell
У меня только осенний курс
источник

к

кана in Haskell
да для курсового даже parsec можно
источник

к

кана in Haskell
можешь попробовать alex+happy
источник

N

Natalya in Haskell
спасибо)
источник

MK

Maxim Koltsov in Haskell
все *parsec очень похожи, если что
источник

K

Kakadu in Haskell
Я своим рекомендовал/заставлял parsec-подобное
источник

MK

Maxim Koltsov in Haskell
alex-happy более сложный путь
источник

к

кана in Haskell
да в целом парсинг это имхо последнее что нужно делать
источник

к

кана in Haskell
потому что во время имплементации аст может 10 раз поменяться
источник

N

Natalya in Haskell
спасибо за совет
источник

к

кана in Haskell
а чтобы не было геморно тестовые аст писать, можно имплементировать инстансы для IsString и Num для него
источник

NI

Nick Ivanych in Haskell
Natalya
Здравствуйте. Я новичок и мой курсовой проект заключается в написании интерпретатора для PCF(язык на основе лямбда выражений). Подскажите,пожалуйста,что лучше использовать для парсинга в haskell?
Это который Ian Mackie приводит?
А что за курсовая, какая тема?
источник

IK

Ilya Kos in Haskell
Maxim Koltsov
megaparsec или attoparsec
Для языка скорее megaparsec
источник

IK

Ilya Kos in Haskell
Хотя бы потому что он нормально ошибки умеет
источник

к

кана in Haskell
happy вроде умеет в какую-то крутую штуку, чтобы собирать сразу несколько ошибок, вместо одной, это оч полезно для языков
источник

NI

Nick Ivanych in Haskell
Зависит от языка. Комбинаторы только LL.
Alex/Happy, это прикольно, но однозначно путь более сложный.
источник