我有一个nspire计算器,在写了一个哈希表实现后,我发现基本环境是一个非常令人反感的编程环境。不幸的是,据我所知,使用Lua来编写库是不可能的。
我确实看到在Lua接口中的某个地方,您可以检测到变量的变化,因此可以在文件中使用Lua函数,但我担心如果在外部使用,它将超出范围。
有没有更好的方法来做这件事?
发布于 2021-08-05 07:12:04
为TI-Nspire编写Lua库并不是不可能的。您可以将库代码放入字符串中,将其作为变量存储在TI-Basic中,然后将文件放入MyLibs文件夹中。然后,当您想要加载库时,执行loadstring(var.recall("libfilename/programstring"))()。这将从该文件中加载库的代码作为字符串,编译它(使用loadstring),并执行它(实际上与require相同)。
此外,关于使用TI-Basic控制Lua脚本的方法,根据您想要做的事情,您可以使用math.eval("<some TI-Basic code>")。这将执行TI-Basic中的代码,并以Lua值(或字符串)的形式返回结果。这样,您就可以偶尔调用TI-Basic函数,并根据其输出执行操作。
https://stackoverflow.com/questions/52570277
复制相似问题