问题标签 [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.
iolanguage - 将字符串视为 IO 中的对象名称的方法?
在 Io 中,有一种getSlot()
方法可以让您将字符串转换为插槽引用,但是是否有类似的方法可以获取对 Object 的引用?例如:
getObject()
不存在,那么什么可以代替它,使“a”最终成为“myObject”的克隆?
iolanguage - Io 字符串(序列)操作/格式化?
Io 是否内置了反映其他语言中的ord()
和chr()
函数的方法(即能够获取一个整数并返回与之关联的 ASCII 字符,或者获取一个字符串字符并返回该字符的 ASCII 数字)?
是否有允许格式化输出的print
/函数?write
我想为命令行创建 ANSI 彩色输出,并且需要打印转义字符(ASCII 字符 27)的方法来做到这一点。
iolanguage - 测试 Io 中是否抛出了预期的异常
有没有一种惯用的方法,它不会重复代码并检查单元测试时是否在 Io 中引发了异常?
至今:
iolanguage - io 赋值运算符不评估?
这给出了一个错误,即序列不响应“:”(“:”仍被视为消息,而不是运算符)。
我认为它应该被评估为myAssignMethod("foo", "bar")
(因为"foo" = "bar"
成为updateSlot("foo", "bar")
),但事实并非如此。然而:
确实可以正常工作,myAssignMethod
并被调用。doString()
那么,在文件的主代码中工作期间,我如何获得代码上发生的任何处理?
operators - 为什么 Io REPL 和解释器给我两个不同的值?
考虑这段代码:
返回应该是list(key, value)
,并且在 Io REPL 中使用它时,这正是返回值。使用解释器时(如io somefile.io
),返回的值为value
。经过一番检查,区别就在这里:
为什么会这样?
iolanguage - Io:如何实例化一个子类化的原语(例如 Number)?
在7 周内的 7 种语言一书中有一个问题:
如果分母为零,您将如何更改 / 以返回 0?
感谢线程self 在方法内部的意义是什么?我有一个可行的解决方案,但我想尝试在不破坏数字“/”方法的情况下做到这一点,而是将数字子类化。这是我尝试过的:
但是,这不起作用。如果我尝试实例化 Zeroable 的实例,它的行为就像一个数字:
如果我以“正常”的方式将 Zeroable 实例化,但它的值始终为 0,并且似乎没有办法改变它:
我认为问题在于ten
实例化的方式,但我无法弄清楚如何将“参数”传递给克隆方法,或者如何创建一个不为 0 的 Zeroable。这是怎么回事?
iolanguage - 实现了一个链表。需要帮助创建堆栈和队列
我在这里已经有了一个工作链表:
现在我需要实现一个堆栈和一个队列。这是我第一次尝试使用这种语言,我很难理解我现在需要为堆栈和队列做什么。
iolanguage - 如何在交互式 Io 解释器中输入多行方法?
我正在7 周内尝试来自 7 种语言的以下示例:
如果我将代码与示例的其余部分(例如animals.io
)一起放在一个文件中并通过命令行执行它,io animals.io
那么它会按预期工作。
但是,如果我尝试手动键入该方法并为任何对象执行它,我会收到以下错误:
是否可以通过交互式解释器输入这种多行方法?
c - 嵌入 Io 语言:从 C 调用 Io 方法
我正在编写一个游戏引擎,我想使用Io来编写脚本。该引擎是用纯 C99 编写的,而不是 C++。我已经成功地将 Io 绑定到了游戏的一些 C 函数,并且效果很好。
但是,我想在 C 游戏循环中调用 Io 方法。本质上,我想加载一个脚本(可能带有IoState_doFile_()
),其中包含以下内容
然后,在 C 游戏循环中,我想调用这些函数,其中一些我需要传递参数。不幸的是,Io 的文档很好但非常稀少。我已经深入研究了 IoVM 代码,但没有发现任何有用的东西(我可能还不够努力)。最好的方法是什么?就像是
看起来相当老套(假设它甚至可以工作;我没有尝试过),更不用说可能真的效率低下。
iolanguage - Io(语言)启动错误 - .io_history
我在 OSX 中安装并运行了 Io(语言)命令行界面,但现在我在启动时收到此错误:
有人知道如何解决吗?我已经请求了文件(但我不知道该放什么。)谷歌搜索这个错误并没有帮助(只是要爱 Io 的非谷歌能力...... :-))