当前位置: 首页 > article >正文

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

解释器

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

代码示例

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

效果图

效果图


http://www.kler.cn/a/291701.html

相关文章:

  • C++ OpenGL学习笔记(2、绘制橙色三角形绘制、绿色随时间变化的三角形绘制)
  • Qt之串口设计-线程实现(十二)
  • 2024_12_20_生活记录
  • 周末总结(2024/12/21)
  • wireshark初认识
  • 华为云计算HCIE笔记01
  • Cubase操作:就地渲染 配和弦技巧 合并多段音频 隐藏标记轨序号 删除素材池多余音频
  • Synchronized、Reetrantlock
  • 【ESP32 】VScode -window环境配置(adruino开发)(点亮LED)
  • softmax里边的exp用拟合验证精度。
  • Java算法之冒泡排序(Bubble Sort)
  • [NOI1998] 免费的馅饼(三维偏序转二维偏序)
  • 【python爬虫】超越Selenium的自动化爬虫神器--DrissionPage语法解析与应用实战
  • C++:控制电脑状态控制
  • WPF 手撸插件 七 日志记录(二)
  • Unity(2022.3.41LTS) - UI详细介绍-Scrollbar(滚动条)
  • 【华为】测试工程师面试题汇总,你可知道华为的高薪技术岗有多香~
  • 中国航天科工笔试25考什么?如何通过人才测评|附真题库面试攻略
  • 布隆过滤器和布谷鸟过滤器
  • 设计模式 | 单例模式
  • 修改jupyter notebook 默认浏览器(不动配置文件,改系统默认浏览器)
  • Python基础语法(17多线程线程锁单例模式)
  • JS中【普通函数中的this】vs【箭头函数中的this】
  • 【Python控制台小游戏】剑与魔法
  • P3631 [APIO2011] 方格染色
  • 深度学习速通系列:Bert模型vs大型语言模型(LLM)