>

예수 책 에는 다음 단락이 있습니다 :

와이즈 비즈

코드를 검사한다는 것은 무엇을 의미하며이 기능으로 무엇을 할 수 있습니까?

Template Haskell is essentially Haskell which generates a Haskell Abstract Syntax Tree (AST).

There’s actually more power in TH than that, as it can actually introspect code. We don’t use these facilities in Yesod, however.


  • 답변 # 1

    Yesod의 템플릿 Haskell 코드는 코드 생성에만 사용됩니다. 그런 의미에서 보일러 플레이트를 엄격하게 대체합니다. 템플릿 Haskell을 사용하는 대신 라우트 파일 구문에서 직접 작성해야하는 코드로의 변환을 수동으로 작성하고 동등한 코드를 직접 작성할 수 있습니다.

    성찰을 통해 실제로 컴파일러가 가지고있는 기존 정보를보고 결정을 내립니다. 예를 들어, Show 의 모든 인스턴스를 검색 할 수 있습니다.  타입 클래스를 만들고 String 를 만드십시오  그 목록으로. 이러한 종류의 접근 방식은 일련의 테스트 자동 생성과 같은 경우에 유용 할 수 있습니다. 이 책의 주석은 단지예요 드가 결코 이런 종류의 일을하지 않는다고 언급하고 있습니다.

관련 자료

  • 이전 javascript - JSUnit에서 HTMLUnit이 멈춤
  • 다음 외부 서버에서 Laravel으로 포스트 데이터 저장