问题标签 [iolanguage]

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

iolanguage - 将字符串视为 IO 中的对象名称的方法?

在 Io 中,有一种getSlot()方法可以让您将字符串转换为插槽引用,但是是否有类似的方法可以获取对 Object 的引用?例如:

getObject()不存在,那么什么可以代替它,使“a”最终成为“myObject”的克隆?

0 投票
1 回答
410 浏览

iolanguage - Io 字符串(序列)操作/格式化?

Io 是否内置了反映其他语言中的ord()chr()函数的方法(即能够获取一个整数并返回与之关联的 ASCII 字符,或者获取一个字符串字符并返回该字符的 ASCII 数字)?

是否有允许格式化输出的print/函数?write我想为命令行创建 ANSI 彩色输出,并且需要打印转义字符(ASCII 字符 27)的方法来做到这一点。

0 投票
1 回答
126 浏览

iolanguage - 测试 Io 中是否抛出了预期的异常

有没有一种惯用的方法,它不会重复代码并检查单元测试时是否在 Io 中引发了异常?

至今:

0 投票
2 回答
180 浏览

iolanguage - io 赋值运算符不评估?

这给出了一个错误,即序列不响应“:”(“:”仍被视为消息,而不是运算符)。

我认为它应该被评估为myAssignMethod("foo", "bar")(因为"foo" = "bar"成为updateSlot("foo", "bar")),但事实并非如此。然而:

确实可以正常工作,myAssignMethod并被调用。doString()那么,在文件的主代码中工作期间,我如何获得代码上发生的任何处理?

0 投票
2 回答
156 浏览

operators - 为什么 Io REPL 和解释器给我两个不同的值?

考虑这段代码:

返回应该是list(key, value),并且在 Io REPL 中使用它时,这正是返回值。使用解释器时(如io somefile.io),返回的值为value。经过一番检查,区别就在这里:

为什么会这样?

0 投票
1 回答
119 浏览

iolanguage - Io:如何实例化一个子类化的原语(例如 Number)?

在7 周内的 7 种语言一书中有一个问题:

如果分母为零,您将如何更改 / 以返回 0?

感谢线程self 在方法内部的意义是什么?我有一个可行的解决方案,但我想尝试在不破坏数字“/”方法的情况下做到这一点,而是将数字子类化。这是我尝试过的:

但是,这不起作用。如果我尝试实例化 Zeroable 的实例,它的行为就像一个数字:

如果我以“正常”的方式将 Zeroable 实例化,但它的值始终为 0,并且似乎没有办法改变它:

我认为问题在于ten实例化的方式,但我无法弄清楚如何将“参数”传递给克隆方法,或者如何创建一个不为 0 的 Zeroable。这是怎么回事?

0 投票
1 回答
115 浏览

iolanguage - 实现了一个链表。需要帮助创建堆栈和队列

我在这里已经有了一个工作链表:

现在我需要实现一个堆栈和一个队列。这是我第一次尝试使用这种语言,我很难理解我现在需要为堆栈和队列做什么。

0 投票
2 回答
167 浏览

iolanguage - 如何在交互式 Io 解释器中输入多行方法?

我正在7 周内尝试来自 7 种语言的以下示例:

如果我将代码与示例的其余部分(例如animals.io)一起放在一个文件中并通过命令行执行它,io animals.io那么它会按预期工作。

但是,如果我尝试手动键入该方法并为任何对象执行它,我会收到以下错误:

是否可以通过交互式解释器输入这种多行方法?

0 投票
1 回答
586 浏览

c - 嵌入 Io 语言:从 C 调用 Io 方法

我正在编写一个游戏引擎,我想使用Io来编写脚本。该引擎是用纯 C99 编写的,而不是 C++。我已经成功地将 Io 绑定到了游戏的一些 C 函数,并且效果很好。
但是,我想在 C 游戏循环中调用 Io 方法。本质上,我想加载一个脚本(可能带有IoState_doFile_()),其中包含以下内容

然后,在 C 游戏循环中,我想调用这些函数,其中一些我需要传递参数。不幸的是,Io 的文档很好但非常稀少。我已经深入研究了 IoVM 代码,但没有发现任何有用的东西(我可能还不够努力)。最好的方法是什么?就像是

看起来相当老套(假设它甚至可以工作;我没有尝试过),更不用说可能真的效率低下。

0 投票
2 回答
161 浏览

iolanguage - Io(语言)启动错误 - .io_history

我在 OSX 中安装并运行了 Io(语言)命令行界面,但现在我在启动时收到此错误:

有人知道如何解决吗?我已经请求了文件(但我不知道该放什么。)谷歌搜索这个错误并没有帮助(只是要爱 Io 的非谷歌能力...... :-))