当前位置: 首页 > 知识库问答 >
问题:

Haskell-没有自定义数据类型函数的(Num(Integer->Integer))实例

沈旻
2023-03-14

我有一个包含函数的自定义数据类型Flist。在下一步中,我想使用apply中的Flist myFunctions

注意:这是一个练习,所以我必须使用自定义列表

data Flist a = Nil | Cons (a -> a) (Flist a)

myFunctions :: Flist (Integer -> Integer)
myFunctions = (Cons (\y x -> x + 1) ( Cons (\x w -> w + 1) (Nil)))

apply :: Flist (a -> a) -> b -> b
apply Nil b         = b
apply (f `Cons` xs) b = apply xs (f b)

调用应该是这样的:apply myFunctions 1returns3

我得到的错误:

  • 没有实例(Num(整数-

问题:我看不出我的错误。为什么我没有对函数应用足够的参数?我传递一个函数的Flist,该函数获取一个Int并返回一个Int。另外,传递另一个Int,应该就是它。这里还缺什么?

共有1个答案

魏毅
2023-03-14

你的代码有几个问题。

你有

data Flist a = Nil | Cons (a -> a) (Flist a)
--         ^               ^^^^^^

如果你有一个函数f::Integer-

事实上,一个Flist(整数-

这意味着myFunctions::Flist(整数-

然后是应用:: Flist(a-

 类似资料:
  • int/uint:变长的有符号或无符号整型。变量支持的步长以8递增,支持从uint8到uint256,以及int8到int256。需要注意的是,uint和int默认代表的是uint256和int256。 支持的运算符: 比较:<=,<,==,!=,>=,>,返回值为bool类型。 位运算符:&,|,(^异或),(~非)。 数学运算:+,-,一元运算+,*,/,(%求余),(**平方)。 整数除法总

  • 本文向大家介绍Java中int与integer的区别(基本数据类型与引用数据类型),包括了Java中int与integer的区别(基本数据类型与引用数据类型)的使用技巧和注意事项,需要的朋友参考一下 一、先说说int与integer的区别   int 是基本数据类型,默认值为0,不需要进行实例化   integer 是引用数据类型,是int的封装类型,默认值为null,创建该类型需要进行实例化。

  • 4.4.5 数据类型的自定义 在有了一些数据类型后,程序员还可定义这些数据类型的别名或指针类型。表达这种定义的伪指令是TYPEDEF,其定义形式如下: 新数据类型名 TYPEDEF [位距] [PTR] 数据类型 其中:“位距”是NEAR、FAR或PROC等。 例如: CHAR TYPEDEF BYTE ;给BYTE定义另一个别名CHAR PCHAR TYPEDEF PTR CHAR ;定义一个字

  • 问题内容: 我对SQLITE相当陌生,我注意到只有4种数据类型,但是我在网上看到的例子中人们在放置自己的数据类型。我对此不太了解,想知道是否有人可以向我解释。例如,我看到一列将保存日期,并且给定的数据类型是不存在的时间戳。默认是什么?自己制作时默认为文本吗? 问题答案: 使用动态类型系统。只有五个存储类:NULL,整数,实数,文本和blob。(来源:SQLite版本3中的数据类型。) 并且,引用该

  • 主要内容:Integer 类的构造方法,Integer 类的常用方法,Integer 类的常量Integer 类在对象中包装了一个基本类型 int 的值。Integer 类对象包含一个 int 类型的字段。此外,该类 提供了多个方法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时非常有用的其他一些常量和方法。 Integer 类的构造方法 Integer 类中的构造方法有以下两个: Integer(int value):构造一个新分配的 Integer

  • 我有一个NN,它有两个相同的CNN(类似于暹罗网络),然后合并输出,并打算在合并的输出上应用自定义损失函数,如下所示: 在我的自定义损失函数中,我需要将y垂直分解为两块,然后对每一块应用分类交叉熵损失。但是,我不断从我的损失函数得到dtype错误,例如: ()中的ValueError回溯(最近一次调用)---- /usr/local/lib/python3。5/地区包/KERA/发动机/培训。编译