问题标签 [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.
java - 如何在 jvm 上运行生成的 frege java 代码?
哈斯凯尔弗雷格你好世界:
你好.fr:
此代码生成 hello.java :
然后我编译生成的java代码没有错误:
然后我尝试运行代码:
但这会返回一个错误:
如何在 jvm 上运行生成的 frege java 代码?
我正在使用 java8
frege - Frege中的正则表达式文字
什么是用于在 Frege 中指定正则表达式文字的重音符号的 unicode 代码?
haskell - Haskell/Frege 是否曾经重新计算惰性列表的元素?
假设我有一个所有素数的列表,定义为
我想primes
通过多个不同的功能来提供信息,例如:
或者
或某事,好像通过做
Haskell 会在任何时候重新计算primes
或其中的任何部分吗?什么会缓存?什么不会被缓存?
附录 0:假设我有另一个函数
如果prime
要使用不同的参数进行评估,每个评估都会重新评估primes
吗?例如:
haskell - 弗雷格跟踪不打印
正如标题所说,由于某种原因,传递给trace
(嗯,它的一个变体)函数的消息在调试函数时没有正确显示。简单地刷新 stdout/stderr 似乎也无济于事。
输出只是
在 stderr 中看不到任何东西(通常由 Eclipse 控制台中的红色文本表示)。
android-gradle-plugin - 使用 Gradle 时如何让 Frege 编译器查看 Android API 类?
我正在尝试使用Frege 语言编写一个 Android 应用程序。不幸的是,我不知道如何做到这一点的任何例子。
所以,我使用 Gradle 作为我的构建系统,带有 Android Gradle 插件。然后为了编译 Frege 代码,我使用 javaexec 在编译 Java 文件之前调用 frege 编译器,如本文中所建议的那样。
我成功地使用由 Java 代码调用的 Frege 代码构建了一个 Android 应用程序,如下所示。
但是,弗雷格代码只能调用标准的 Java API。它不能调用任何 Android API。
我希望能够从 Frege 调用 Android API。这里有一个不错的 repo ,其中包含 Android API 的 Frege 包装器。不幸的是,它没有构建系统或说明。
我相信我已经成功地设置了我build.gradle
的构建FregeAndroid
包装器以及我的项目代码。Frege 编译器确实在尝试构建它们。
但是,FregeAndroid
代码无法编译,因为它看不到 Android API 类。我假设我需要以某种方式找到 Android API 类的位置,然后将其添加到 Frege 编译器的类路径中,以便它可以看到这些类。不幸的是,这就是我卡住的地方。我是 Gradle 的新手,不知道该怎么做。
任何想法将不胜感激!
frege - 搜索现有的 Frege java 本机绑定,例如 java.nio.file.Path
我正在尝试将一个简单的 java 项目移植到 Frege 进行练习。我花了一些时间寻找绑定java.nio.file.Path
,除其他外。我找到了https://github.com/Frege/frege/blob/master/frege/java/IO.fr,它很接近,但没有nio
。接下来我想我会手动完成或尝试https://github.com/Frege/frege-native-gen。
好的,所以我的问题是“推荐的 java 绑定方法是什么”?这个问题不仅限于java.nio.*
. 更具体地说,如果我找不到我想要的绑定,我应该
- 为他们寻找一些标准项目,如果我找不到他们,贡献我自己的?
- 使用生成工具创建我自己的?
- 做一些这里没有提到的事情吗?
haskell - Haskell/Frege <=< 和 =<< 关联性
根据 Hoogle 的说法,<=<
(Kleisli monad composition,或“left fish”) 和=<<
(reverse monad bind) 的固定性是infixr 1
. 如果我没看错的话,像这样的表达,说
应该是无效的,因为它等同于同样无效的
但是由于某种原因,尽管第一个表达式在 Haskell 中似乎无效,但正如预期的那样,弗雷格似乎没有抱怨,并且<=<
在=<<
.
当我在 pointfree.io 上搞砸以弄清楚如何制作类似的东西时,我发现了这一点
无积分,它给了我
考虑到固定性,这看起来不太正确。
frege - 类型不像建议的那样多态
我正在尝试为以下数据类型创建一个 Functor 实例:
但是编译失败并出现以下错误:
我尝试添加一些类型注释来概括 let 绑定,但这不起作用。
android - 纯粹在 Frege 中编写一个 Android 应用程序
我已经研究了一段时间了,但似乎有一些旧的解决方案主要专注于从 Java 调用 frege。有没有办法纯粹在 Frege 中编写完整的应用程序/活动?如果不是,为什么?
android - 在 Android Studio 中编译其他 JVM 语言
我正在尝试在 Frege 中编写 Android 应用程序,我目前有 gradle 在评估后编译项目,如下所示:
这样做的问题是它看不到 Android API(我必须手动添加它来编译依赖项)并且它不能使用任何aar
文件,例如支持,因为编译发生在它们“爆炸”之前。所以我想编译 Frege 文件代替 Java 文件,并为我的项目设置一个默认编译器。
我想 Android Studio 在某些时候运行javac
我如何用自定义编译命令替换它?