所以,我有具有大量的情況下,這是由一種「註釋」類型 data Expr a = Plus a Int Int
| ...
| Times a Int Int
我有參數的AST數據類型註釋類型S和T,以及一些功能f :: S -> T。我想採用Expr S並將其轉換爲Expr T,使用我的轉換f對每個S發生在Expr值內。 有沒有辦法做到這一點使用SYB或泛型,並避免在每種情
與this question相關我今天早些時候問過。 我有大量的案例,這是由「註釋」型 data Expr ann def var = Plus a Int Int
| ...
| Times a Int Int
deriving (Data, Typeable, Functor)
我有具體事例爲高清和VAR參數的AST數據類型,說Def和Var。 我想要的是自動
下面的文件無法編譯: {-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE TypeOperators #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUA