js实现lua解释器,类似halcon代码编辑器一行一行解释执行

解释器

只能一行一行执行,不能有一行代码跨越多行,不支持lua的表,只支持for i的循环,支持自定义函数,并且可以跳到函数里面一行一行执行,这里的函数并不是lua的函数,而是由js状态控制执行函数里的代码,if for 循环一样也是由js状态机跟踪状态并执行对应指令,函数之前的变量使用lua的表进行隔离,每个函数对应一个函数名的表,函数直接的参数传递由js状态机自动复制到函数对应的表中,包括函数的返回值。

代码示例

lua 复制代码
function test()
  for i=0,10,1 do
   f=1
   d=1
   for j=0,5,1 do
     if(d==1)
     then
       b=f*2
     else
       b=1
     end
   end
  end
end
  
test()

效果图

相关推荐
麦麦大数据23 分钟前
MacOS 安装Python 3.13【同时保留旧版本】
开发语言·python·macos·python安装
上去我就QWER2 小时前
Qt中如何获取系统版本信息
开发语言·qt
我是苏苏3 小时前
C#高级:程序查询写法性能优化提升策略(附带Gzip算法示例)
开发语言·算法·c#
木木子99993 小时前
业务架构、应用架构、数据架构、技术架构
java·开发语言·架构
大佬,救命!!!8 小时前
C++多线程同步与互斥
开发语言·c++·学习笔记·多线程·互斥锁·同步与互斥·死锁和避免策略
赵文宇(温玉)9 小时前
构建内网离线的“github.com“,完美解决内网Go开发依赖
开发语言·golang·github
qq7422349849 小时前
Python操作数据库之pyodbc
开发语言·数据库·python
Joker100859 小时前
仓颉自定义序列化:从原理到高性能多协议实现
开发语言
Adellle9 小时前
2.单例模式
java·开发语言·单例模式
散峰而望9 小时前
C++入门(一)(算法竞赛)
c语言·开发语言·c++·编辑器·github