我正在尝试在 Haskell 中编写替换算法。我已经Subst a
用一个构造函数定义了一个多态数据类型,S::[(String, a)] -> Subst a
如下所示:
data Subst a = S [(String, a)]
我现在想编写一个函数single::String -> a -> Subst a
来构造一个只替换单个变量的函数
这是我尝试过的:
single::String -> a -> Subst a
single s1 (Subst a) = s1 a
但是,我收到此错误:Not in scope: data constructor 'Subst'
有没有人知道我做错了什么?