问题标签 [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.

0 投票
3 回答
751 浏览

haskell - 评估 Haskell 数据类型中未定义的元素

如果我尝试> fst(a, b)where a, bare undefined ,我会得到未定义的错误b。即使在尝试snd(a, b)它也是b首先导致错误。我有命令式编程的背景。我想知道这是否是某种我不理解的懒惰。

0 投票
2 回答
260 浏览

haskell - 输入错误 Haskell,怎么了?

我正在使用拥抱来编译一个简单的 Haskell 函数来计算排列的数量。我希望它返回一个整数,但我需要对浮点数进行操作。我试图将答案计算为浮点数,然后将其截断,但由于某种原因它无法解决。

这是功能:

这是错误(第 35 行是函数的第二行):

我可能很明显错过了一些东西,但我已经做了很长一段时间了,想不出解决方案。

0 投票
2 回答
292 浏览

haskell - Haskell 解释器 /w 类型定义

是否有接受类型定义或最好是各种语句的 Haskell 解释器?

我已经尝试过了ghcihugs但这些都没有。是否有某些特殊原因表明这很难/不可能?

0 投票
6 回答
4533 浏览

haskell - 如何测试我的 haskell 函数

我刚开始使用 Haskell 并尝试先编写一些测试。基本上,我想定义一些函数,然后调用这个函数来检查行为。

如果我在 Hugs98 中加载那个小脚本,我会收到以下错误:

如果我删除最后一行,加载脚本,然后在 hugs 解释器中输入“add 2 3”,它就可以正常工作。

所以问题是:如何将我的函数调用与函数定义放在同一个脚本中?我只想加载脚本并能够检查它是否符合我的预期......我不想一直手动输入它们。

0 投票
3 回答
476 浏览

haskell - 为什么 Haskell (Hugs) 中的这个 Show 实例会导致堆栈溢出错误?

以下是 Haskell 中的一种多态数据类型,由 Hugs 解释。我正在尝试创建一个 Show for Equality 的实例。

实例声明说如果类型“a”在 Show 中,那么 Equality a 在 Show 中。它应该以“a = b”的形式将两个参数打印到构造函数 Equals ab。

然而,在 Hugs 中输入诸如“(Equality 9 9)”之类的内容会产生:

错误 - C 堆栈溢出

所以,我尝试用几个空格缩进“show (Equals ab)...”行。我不确定会有什么区别,但只是在玩,然后得到了这个:

谁能解释为什么会发生这些错误,或者提出更好的方法来实现这个展示实例?

谢谢!

0 投票
2 回答
145 浏览

haskell - 拥抱类型签名包含额外的类型约束?

在玩 Haskell 时遇到了这个问题,我很困惑:

里面在做什么a?我该怎么读?如果我在 GHCi 中输入相同的内容,它会给出我期望的输出:

这是拥抱中的错误吗?

0 投票
2 回答
153 浏览

haskell - 在拥抱中启用 -98?

每当我开始拥抱时,它总是说

你到底是怎么做到的?

0 投票
2 回答
1608 浏览

c++ - 用 C++ 编写 Haskell 解释器(使用 ghc 或 hugs 作为库)

我正在编写一个需要解释和评估 haskell 代码的 C++ 应用程序。此代码在编译时未知,但由用户提供。有没有办法使用 haskell 编译器/解释器(如 GHCi 或 hugs)作为库?

  • 我找到了 FFI,但这似乎只适用于编译时已知的 haskell 代码。
  • 我找到了 GHC API 和提示,但它们似乎只在我想从 haskell 中解释 haskell 代码时才起作用。
0 投票
2 回答
562 浏览

haskell - Haskell 中使用 Hugs 的“错误 - C 堆栈溢出”

我正在将 CSV 文件解析为 CSV 类型,它是一个记录列表,它是一个字段列表,它们只是字符串。插入新行然后尝试访问 csv 后,我得到 c 堆栈溢出错误。我读过这个错误可能来自使用尾递归的太大的“thunk”,但我不认为那是我做错了什么?

0 投票
1 回答
229 浏览

haskell - 拥抱!!部分应用程序错误

Hugs 似乎有问题,!!在一个部分应用程序中不包含几个。

虽然这在 GHCi 中运行良好:

Hugs 报告).

这是拥抱中的错误吗?

为第二个列表索引运算符添加一个额外的大括号虽然有效:

或者