从TI-BASIC呼叫Lua

时间:2018-09-29 16:23:08

标签: lua ti-basic ti-nspire

我有一个nspire计算器,在编写了哈希表实现之后,发现BASIC环境是一个非常令人反感的编程环境。不幸的是,据我所知,使用Lua编写库是不可能的。

我确实看到在Lua界面中的某个地方可以检测到变量更改,因此在文件中可能会使用Lua函数,但是我担心如果在外部使用它会超出范围。

有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

为 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 函数,并根据其输出进行操作。