问题标签 [frege]

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 投票
1 回答
266 浏览

clojure - Iterate produces StackOverflow errors

So I just started out with Frege and Haskell as well. I have experience with functional languages, since I was using Clojure for a couple of years now. The first thing I wanted to try out is my usual approach at the Fibonacci numbers.

This is how it turned out in Frege. It works, but for very high numbers for fib, e.g. (fib 4000), it throws StackOverflow errors. This surprised me, because same functions in Clojure would work just fine. Is this a Frege bug or am I getting the whole lazy evaluation thing wrong?

0 投票
1 回答
96 浏览

frege - Frege中的“包”和“模块”有什么区别?

嗨,我一直在玩Fregepackage ,我只是在一些示例中注意到module它们可以互换使用:

而有时:

从一个或另一个导入时,我看不到我的程序行为有任何差异。package使用ormodule关键字时有什么我应该记住的吗?

0 投票
2 回答
174 浏览

java - 从 Java 调用 Frege 与参数数量不匹配

我的弗雷格代码如下(主要是注意getDatabase的类型签名)

然后从Java我想定义以下函数(其中DATABASE是一个字符串常量):

然而,这给了我一个java.lang.ClassCastException: frege.prelude.PreludeBase$TST$1 cannot be cast to java.util.ArrayList

通过实验,我不得不将代码更改为

我在后者中添加了 null 只是为了表明我传入的内容并不重要。我不知道为什么我必须应用该函数三次(我不能立即强制评估)。有什么办法可以删除应用程序或对为什么它们是必要的有一些合理化?(注意:使用 .result() 无济于事。)

0 投票
1 回答
113 浏览

frege - 如何处理弗雷格中的异常?

尝试处理异常时,我发现了一个相关的问题:

与 Haskell 的“交互”函数等效的 Frege 是什么?

但我不清楚如何使用这些try/catch/finally表达式。

问题

我想读取一个文件并返回它的所有行。如果它不存在,我可能想返回一个空列表。就像是:

前面的代码可以编译,但执行时只显示以下内容:

问题:

  • 我应该如何更改我的代码以按预期运行(在引发异常时返回一个空列表)?
  • 文档中有与此相关的地方吗?我相信更多的例子docs/wiki/frege goodness会有很大帮助。

谢谢

0 投票
1 回答
69 浏览

frege - 可以用函数的附加类型限制声明 Functor 实例吗

我正在将 GHC/Arr.hs 移植到 Frege 中。

数组定义:

有功能:

现在,我不知道如何Functor为它定义实例,因为

但是编译器抱怨推断类型比预期的更受限制,这似乎是真的。我可以为函数制作Array一个带有限制的函子ArrayElem -> ArrayElem吗?

0 投票
2 回答
82 浏览

frege - 解析 JSON 值

可以说我有以下结构:

到目前为止,我可以将 Lang 实例转换为 JSON:

但我不知道如何实现相反的操作:

我首先阅读了文档,但恐怕fromJSON在这种情况下我仍然不知道如何使用和使用模式匹配:(

0 投票
1 回答
133 浏览

java - 将 Java 数组映射到 Frege

假设我想映射 Java 代码:

对它的弗雷格对应物:

目前弗雷格抱怨:

如何将 Java 数组映射到 Frege?

0 投票
1 回答
128 浏览

frege - 递归和 StackOverflowError

您将如何调整这个简单的递归示例,以便进行尾调用优化(而不是 a StackOverflowError)?

0 投票
2 回答
153 浏览

j2objc - 创建 frege.jar 并包含中间 .java 文件(用于 J2ObjC)

有没有办法将 Frege 运行时和库编译为它们的 .java 中间体?我正在尝试通过 J2ObjC 将 Frege 用作 iOS 应用程序的一部分,它无法解析 .class 文件。

0 投票
1 回答
118 浏览

frege - frege 纯函数和性能优化

我对 haskell 纯函数的理解是,它们可以实现缓存等性能优化(因为纯函数每次都会为相同的输入返回相同的结果)。frege 的纯函数有哪些性能优化?