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()

效果图

相关推荐
楼田莉子1 小时前
C++17新特性:__had_include/属性/求值顺序规则
开发语言·c++·后端
香蕉鼠片1 小时前
Python进阶学习
开发语言·python
摇滚侠1 小时前
Java 零基础全套教程,File 类与 IO 流,笔记 177-178
java·开发语言·笔记
ytttr8732 小时前
OPC UA 协议栈 C 语言实现
c语言·开发语言·mfc
song5012 小时前
Ascend C 算子开发:从入门到上手
c语言·开发语言·图像处理·人工智能·分布式·flutter·交互
小a杰.2 小时前
Ascend C编程语言进阶:高性能算子开发技巧
android·c语言·开发语言
全糖可乐气泡水2 小时前
Codex适配国产信创环境安装部署与技术适配全解析
开发语言·git·python·算法·百度
雨落在了我的手上2 小时前
初始java(十):类和对象(⼆)
java·开发语言
LeocenaY2 小时前
搜集的一些测开面试题
开发语言·python
threelab3 小时前
Three.js 加载 3D Tiles 瓦片数据 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器