-
我们的场景有 点类似游戏,基本是功能基本明确,但是逻辑关系特别复杂多变,然后看到了qlang,想把功能实现还是放在go里面,用qlang动态处理逻辑代码,一次编译多次使用,不知道表述的有疑问么,
-
在keyword.control.qlang中,contiue应为continue
-
类似lua支持全局函数更新 元表函数更新
qlang的实现不知道怎么搞。
直接撸上有问题的代码
Foo = class {
fn print() {
//老版本代码
println("ver1")
}
}
foo = new Foo
foo.print() //ver1
Foo = class {
fn print() {
//替换新版本代码
…
-
hi ,all
根据说明文档安装qlang到本地后,并没有生成 qlang 的命令二进制文件.
go get -u -insecure qlang.io/qlang
$qlang
No command 'qlang' found,
应该还缺少一个生成 qlang cmd 的步骤吧?
…
-
测试的Q代码:
``` go
package main
import (
"fmt"
"qlang.io/cl/qlang"
_ "qlang.io/qlang/builtin"
"qlang.io/qlang/net/http"
)
func main() {
qlang.Import("http", http.Exports)
q :=…
-
既有的导出包如果已经存在,里面可能有部分代码是手工改动后的,直接覆盖不是很合适。建议:
如果已经存在目标的包,则找到目标包的 Exports 表,如果里面已经存在某个函数就不必再导出。例如假设我们要导出一个名为 foo 的包,但是这个目标包已经存在,内容如下:
``` go
package foo
...
// Exports is the export table of this modu…
-
hi all,
The url https://github.com/qiniu/qlang/blob/develop/app/eql in ReadMe.md near text " Embedded qlong " is broken.
thanks
-
为了快速推出一个编译执行版本的 qlang,我们没有调整任何功能的实现机理,只是完成从解析执行到基于编译执行(编译=>执行器解析执行编译结果)的改变。
考虑到 qlang.v1 版本的变量机制从字节码执行角度来说仍然有很大的提升空间:可从map查询改为基于stack 偏移的地址定位。
-
同样的ql脚本使用同一个Qlang对象,这个场景下需要增加单对象的并发支持
-
首先,编译不通过,因为最新版的qlang,qlang.New 原型改变:
```
ql, err := qlang.New(options)
```
改为:
```
ql := qlang.New()
```
我已提了相应的PR: #1
其次,编译通过,但运行不通过,报错如下:
```
panic: /Users/bingo/.gvm/pkgsets/go1.6.2/global/sr…