登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> CLQ工作室开源代码 >> 主题: delphi 中的 lua     [回主站]     [分站链接]
标题
delphi 中的 lua
clq
浏览(477) + 2022-08-16 13:54:55 发表 编辑

关键字:

[2022-08-16 15:10:25 最后更新]
delphi 中的 lua

https://www.cnblogs.com/findumars/p/6359746.html

Delphi Lua
* @copyright Copyright (c) 2009 Dennis D. Spreen (http://www.spreendigital.de/blog

--------------------------------------------------------
http://www.360doc.com/content/17/0319/21/9200790_638288355.shtml

https://sourceforge.net/projects/lua4delphi/files/

--------------------------------------------------------
4. lua的delphi译本似乎很多,我用的是http://www.matrix44.de/lua/下载的

--------------------------------------------------------
本篇主要论述 如何将 C# 代码自动转换为 Lua 代码的解决方案


方案流程

利用 Mono ceil 库分析程序集中的类、字段、方法签名,然后将其翻译成对应的Lua 模块所模拟的类型结构通过 ILSpy工具分析IL指令集,重建由语句表达式组成的AST(抽象语法树),并翻译成对应的Lua方法体把Lua类型与Lua方法体合并成完整的Lua代码

--------------------------------------------------------

C#中的Lua AST

abstract-syntax-treec#luametalua
Lua AST within C#

从Lua脚本在C#中获取抽象语法树的最简单方法是什么? 我正在尝试在C#中对Lua脚本进行简单的静态代码分析。

许多现有的代码分析工具(例如LuaInspect)都基于MetaLua,但是我看不到将MetaLua集成到C#中的简便方法。 Lua for Irony之类的项目似乎正处于alpha阶段,或者该开发在几年前就已停止。

您对在C#中获得用于LUA的AST进行静态代码分析的建议是什么?

您可能想尝试monosharp:http://www.moonsharp.org/

它使用ANTLR来构建C#AST。 但是,您可能必须进行一些代码拼写,因为它的主要目的不是"创建AST",而是"直接在C#中解释Lua"。

如果您可以运行Lua代码,则没有什么可以阻止您集成LuaInspect和MetaLua。 MetaLua的早期版本需要一些手动工作才能避免编译步骤,但是最新版本(0.7+)不需要太多工作。 AST的生成非常简单:
1

require('metalua.compiler').new():src_to_ast(src, filename)

请注意,LuaInspect尚未更新以支持最新的metalua版本中的lineinfo格式更改,因此,如果您打算将其与ML 0.7+一起使用,则可以查看为使它在Lua IDE中正常工作而进行的这些更改。 我正在努力。





clq
2022-08-16 13:58:50 发表 编辑

这个是用 dll 的。
https://gitee.com/alonetech/aLoNeSourceD7/blob/master/LuaLib.pas

clq
2022-08-16 14:10:42 发表 编辑


https://github.com/exlunaproject/pLua-XE

https://github.com/MageSlayer/pLua

这两个似乎是纯 lua

clq
2022-08-16 14:17:04 发表 编辑

https://www.cnblogs.com/zd5000/archive/2012/05/03/2480731.html

这几天试图在delphi中整合Lua,发现相关的资料相当少。

最早下载的Lua4Delphi(http://sourceforge.net/projects/lua4delphi/files/lua4delphi/)包已经废弃很久了。连自带的示例都无法正常运行。源码中也有显而易见的bug。所以继续寻找可用的组件,找到了LuaDelphi 2010(http://blog.spreendigital.de/wp-content/uploads/2009/10/LuaDelphi2010-v1.3.zip) 这个组件可以正常运行,但有一个缺点:只能注册类中的方法而无法注册类本身。而且注册的类方法必须遵循统一的函数原型。所以它也不是好的选择。

后来找到了一个叫pLua的组件,发现它还是不错的,支持注册类,也支持动态注册类实例。不过它是用Lazarus写的,所以在函数指针上与delphi编译器有差异,在pLuaObject.pas中,plua_pushFunction这个过程要改一下才能正常运行。具体就是把 addr := integer(p^); 改成 addr := integer(p);即可.

clq
2022-08-16 14:48:39 发表 编辑

https://zhuanlan.zhihu.com/p/104525643

https://www.cnblogs.com/hez2010/archive/2020/01/31/12246841.html
用 F# 手写 TypeScript 转 C# 类型绑定生成器

https://github.com/TypeStrong/typedoc


clq
2022-08-16 15:10:25 发表 编辑

Monaco Editor 是一个浏览器端的代码编辑器库,同时它也是 VS Code 所使用的编辑器。Monaco Editor 可以看作是一个编辑器控件,只提供了基础的编辑器与语言相关的接口,可以被用于任何基于 Web 技术构建的项目中,而 VS Code 包含了文件管理、版本控制、插件等功能,是一款桌面软件。Monaco Editor 的 GitHub 仓库中不包含任何实际功能代码,因为其源代码与 VS Code 在同一个仓库,只是在版本发布时会构建出独立的编辑器代码

总数:5 页次:1/1 首页 尾页  
总数:5 页次:1/1 首页 尾页  


所在合集/目录



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1