小编opq*_*nut的帖子

如何确定Haskell函数的类型?

我偶然发现了很多练习,它们会给你一个功能,并要求你推断出每个练习的类型.

我有以下示例.请注意,这不是我需要完成的功课.我有这个具体例子的答案,并在下面提供.也许有人可以帮助我学习如何推理这种练习.

功能:

h1 f g x y = f (g x y) x
Run Code Online (Sandbox Code Playgroud)

假设的类型:

h1 :: (a -> b -> c) -> (b -> d -> a) -> b -> d -> c
Run Code Online (Sandbox Code Playgroud)

谢谢!


我加了27次演习在这里 没有解决方案.

其中一些有解决方案包括在这里.但是,可以使用GHCi命令知道类型:t

haskell functional-programming

17
推荐指数
3
解决办法
6147
查看次数

如果类实例是一个循环,GHC可以发出警告吗?

真实世界Haskell有这个例子:

class BasicEq3 a where
    isEqual3 :: a -> a -> Bool
    isEqual3 x y = not (isNotEqual3 x y)

    isNotEqual3 :: a -> a -> Bool
    isNotEqual3 x y = not (isEqual3 x y) 

instance BasicEq3 Bool
Run Code Online (Sandbox Code Playgroud)

当我在GHCI中运行时:

#> isEqual3 False False
out of memory
Run Code Online (Sandbox Code Playgroud)

因此,您必须实现两种方法中的至少一种,否则它将循环.而且你可以灵活地选择哪一个很整洁.

我的问题是,有没有办法得到一个警告或什么,如果没有覆盖足够的默认值和默认值形成一个循环?我觉得奇怪的是,这个例子对于那么疯狂的编译器来说很好.

haskell

12
推荐指数
3
解决办法
335
查看次数

Android应用程序的谷歌地图在市场上不起作用

我使用地图活动构建一个Android应用程序..当我在我的电脑上测试应用程序时,地图工作正常,但当我将应用程序上传到市场时,我在地图上的所有东西都是针脚,但没有地图在背景中,请请任何身体帮助我......

java android google-maps

0
推荐指数
1
解决办法
411
查看次数