5
haskell-src-exts Exp
type과 유사한 텍스트 소스 모듈이 아닌 AST 표현식을로드하기 위해 GHC API 또는 다른 것을 사용할 수 있습니까? 이렇게하면 코드 생성 및 구문 분석에 소요되는 시간을 절약 할 수 있습니다.하스켈 추상 구문 표현의 동적 로딩
haskell-src-exts Exp
type과 유사한 텍스트 소스 모듈이 아닌 AST 표현식을로드하기 위해 GHC API 또는 다른 것을 사용할 수 있습니까? 이렇게하면 코드 생성 및 구문 분석에 소요되는 시간을 절약 할 수 있습니다.하스켈 추상 구문 표현의 동적 로딩
나는 GHC API가 AST 인터페이스를 노출한다고 생각하지 않지만 틀릴 수도있다.하지만 Template Haskell은 그렇다. Language.Haskell.TH
Exp
구조체를 사용하여 표현식을 작성하는 경우 함수/선언문을 만들고 $(someTHFunction)
구문을 사용하여 표현식을 사용할 수 있습니다.
TH는 컴파일시에만 실행되므로 모든 것을 사전 생성해야합니다. 런타임에 TH를 사용하려면 템플릿 haskell AST를 예쁜 것으로 인쇄 한 다음 결과 문자열에 GHC API를 사용해야한다고 생각합니다.
또한 Template Haskell 소스 코드를 생성 할 수 있습니다. 이것은 AST 표현식 생성과 하스켈 텍스트 소스 생성 사이의 절충안으로 간주 될 수 있습니다. – modular