问题标签 [hugs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
haskell - 创建一个新类型的 Eq 实例
我正在学习 Haskell,并且得到了以下任务 - 我有一个由两种混合数据类型组成的新类型,我必须在不使用派生的情况下将其设为 Eq 的实例。这是我所拥有的:
然而,拥抱就是一切
我该如何解决?我也不能真正导入 Eq 隐藏的东西,因为我需要它来检查 Number 或 Character 的给定成员是否相等。
haskell - 无法使用评估器推断实例
我已经开始通过http://www.cs.nott.ac.uk/~pszgmh/monads学习函数式编程课程的介绍。有什么比实际尝试和测试代码更好的方式来尝试和理解事物。
唉,在第二页上我遇到以下内容:
当我尝试运行它时会产生错误。我不太确定为什么会这样。当我尝试
在 repl 循环中,它工作得很好,但是
以类型推断错误结束。
当我将定义更新为以下内容时:
我在定义中遇到类型错误。第一个定义有什么问题?顺便说一句,该课程使用Hugs。
ubuntu - 带有haskell的文件的字数
当我试图计算文件的字数时,我遇到了 Haskell 的问题。我只是一个初学者,这是我的第一个程序,所以我很确定这是一个非常简单的错误。我正在使用拥抱来运行我的代码。直到现在我学会了如何从一个文件中读取,但我没能数出其中的单词。我的代码是这样的
任何帮助将不胜感激。谢谢!
haskell - 为什么我可以在 Haskell 中打印包含 5 个元素但不能包含 6 个元素的元组?
我尝试打印以下元组
这给了我以下错误
但是如果我尝试使用以下元组
一切都像魅力一样。
我的猜测是 Haskell 只Show
为最多五个元素的元组定义(因为一个有 5 个元素的元组显然是另一种类型,而不是一个有 6 个元素的元组)。但不知何故,我愚蠢地找到了证据。
所以我的问题是:
为什么会这样,我怎样才能打印一个包含 6 个元素的元组(因为我似乎不能将元组放在instance
定义的头部)?
编辑:我正在使用拥抱
haskell - 我的 Haskell 代码有什么问题?
我的代码:
我正在实现的功能与上述功能不完全相同,但格式相同,我总是得到:
那么我的 Haskell 代码有什么问题呢?我真的需要使用“where”子句,但我认为我做错了什么。
haskell - 如何在 ubuntu 中安装 Hugs 编译器?
我想用 Haskel 编程,这是一种函数式编程语言,我想在 Ubuntu 中为此安装 Hugs 编译器。有没有人知道它的安装。
haskell - 在 macOS sierra 上安装 Hugs 98
我在 macOS Sierra 上安装 Hugs 98 时遇到问题。我已经按照这里的说明(http://www.willamette.edu/~fruehr/154/HugsMacInstall.html)告诉我安装macports然后运行sudo port install hugs98。不幸的是,这会导致以下错误消息:
错误:处理端口 hugs98 失败
有谁知道是否可以在 macOS sierra 上安装 HUGS?
谢谢!
haskell - 在没有包的情况下使用 haskell/hugs 在 cgi 中获取环境变量
我正在用 Haskell 编写一个 cgi 脚本。我只能使用拥抱/跑步拥抱。
到目前为止,一切都很好。但是现在我想获取服务器的环境变量。例如“SCRIPT_NAME”环境变量。
使用 bash 我可以:
结果是:/path/to/script.cgi
在浏览器窗口中。
对于 Haskell,我发现了类似的东西:script <- getEnv "SCRIPT_NAME"
,但是
不起作用。
有可能以某种方式做到这一点吗?
- 没有进口的平原,或
- 可以在拥抱中导入
haskell - 拥抱 - 包含无限列表的一部分的列表理解导致控制堆栈溢出
我尝试编写一个函数来获取整数列表并对其进行过滤,以便返回的列表仅包含与特定模式匹配的数字。不幸的是,顺序必须保持不变。我已经实现了一个无限列表,它按有序序列返回所有有效数字并在列表理解中使用它。这在 ghci 中工作得很好而且很快,但我的问题是,我们需要在我的大学课程中使用更大的拥抱列表,它会导致控制堆栈溢出,我不理解。
我写了最少的例子来证明我的问题:
如果我使用aList = map (8*) [0..]
而不是aList = map (1000*) [0..]
. 完成只需要更长的时间,因为它必须进行更多的比较,但不会导致崩溃。因此,列表的长度elem
似乎不会影响控制堆栈的长度?
我不知道为什么会发生控制堆栈溢出。甚至[x| x<-liste,foldl' (||) False $map (==x) cap_aList]
导致相同的错误。
如果它与普通列表一起使用,列表推导完美无瑕,但如果与takeWhile
(参见inaList
和inaList_2
)一起使用,它会遇到控制堆栈溢出或分段错误。如果take
与计算值一起使用(请参阅inaList_3
参考资料),它也会崩溃。使用“静态” take
(请参阅 参考资料inaList_working
)它会突然起作用。我想,where 子句通常应该只计算一次或从不计算。那么为什么列表的构建方式会有所不同呢?如果控制堆栈已满,拥抱不应该尝试减少/计算控制堆栈吗?不幸的是,大多数文档似乎只适用于 ghc。
那么为什么在这种情况下会发生这种控制堆栈溢出,如何避免它以及如何确定控制堆栈的外观/填充方式?是否有多个控制堆栈?
我希望有人能解释发生了什么。
haskell - Hugs Permutations Sufficient Space
First of all, yeah I know that I should use ghc instead (but we are forced to use hugs in the course)
So I try to generate all permutations of [1 .. 9]
but when evaluating this, hugs throws an error:
"ERROR - Garbage collection fails to reclaim sufficient space"
Is there any quickfix or roundabout for this?