问题标签 [factor-lang]

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 回答
45 浏览

quotations - 使用由另一个单词计算的引用会导致编译错误

背景

加载下面的代码段会导致错误消息无法将“调用”应用于运行时计算值

我的理解是这是一种预期的行为,因为调用map的内部调用需要在编译时存在已处理报价的输入和输出。

问题

然而,我在听众中测试了我认为是两个等价的表达方式,它们工作得很好。

示例 1:

示例 2:

问题

原始代码和导致第一个错误但其他两个错误的工作示例之间有什么区别?显然,我在这里不理解引文。

附加信息

有趣的是,我试图将第一个示例中对map的调用包装成一个单词,它导致与原始代码相同的错误:

0 投票
1 回答
49 浏览

factor-lang - 将序列解构为词法变量

我有一个具有已知数量元素的序列(来自 pcre 匹配),并希望将其映射到词法变量中。

我可能可以遍历序列并将每个元素放入堆栈然后:> ( a b c d )但是有没有一种惯用的方法来做到这一点?

哦,我的序列有超过 4 个元素,所以first4没有删减它,尽管我显然可以使用first4然后first3在序列的一个子集上。

0 投票
0 回答
83 浏览

generics - 无法笼统地定义 +?

我正在关注Andrea Ferretti 的教程,并试图+为我自己的类型定义。

我的元组是:

如果我创建自己的通用词

然后我可以用它来添加把两个myBoxes的内容加在一起

哪个输出

但是,如果尝试+为 with 定义自己myBox

然后,当我尝试使用它时:

我得到错误:

如果我转到帮助页面,+我什至会看到我的定义在其他列表中列出(即bignumcomplexfixnumfloatratio)。

如何+为自己的元组定义通用词?

0 投票
1 回答
15 浏览

combinators - 如何使用数据流组合器提取此因子字定义中的冗余?

我正在使用早期的 ProjectEuler 问题作为了解 Factor 的一种方式。我已经在第一个问题中找不到令人满意的解决方案。

我可以用这个解决除法测试

但我不喜欢的是重复mod。当然只有两次,但另一个问题可能需要检查200。

我尝试使用map, curry, bi, 2bi, bi@, 数组和普通堆栈值等。我总是得到堆栈下溢或效果不匹配(使用时map)。我还没有找到在检查器中查看我的试验结果的方法。

我怎样才能将mod其分解并应用于{ 3 5 }或等效堆栈?
Cool 将是两个变体,例如 a mod3and5(包括效果规范);一个留2 1在堆栈上输入 11 和一个返回{ 2 1 }