FakeScript-Java轻量级嵌入式脚本语言
FakeScript-Java
轻量级嵌入式脚本语言。
简介
FakeScript-Java是一款轻量级的嵌入式脚本语言,使用Java语言编写,语法吸取自lua、golang、erlang,基于jflex、cup生成语法树,编译成字节码解释执行。 C/C++版本fakescript
脚本特性
语法类似lua
全部为函数
支持array,map,可以无限嵌套
支持fake testfunc(param1)产生routine,实现假多线程效果
支持Java静态函数和Java类成员函数的绑定
自带解释器
支持多返回值
自带profile,可获取脚本各个函数运行时间
支持热更新
支持Int64
支持const定义
支持包
支持struct
示例
#!lua -- 当前包名 package mypackage.test -- 引入的文件 include "common.fk" -- 结构体定义 struct teststruct sample_a sample_b sample_c end -- 常量值 const hellostring = "hello" const helloint = 1234 const hellomap = {1 : "a" 2 : "b" 3 : [1 2 3]} -- func1 comment func myfunc1(arg1, arg2) -- Java静态函数和类成员函数的调用 arg3 := cfunc1(helloint) + arg2:memfunc1(arg1) -- 分支 if arg1 < arg2 then -- 创建一个协程 fake myfunc2(arg1, arg2) elseif arg1 == arg2 then print("elseif") else print("else") end -- for循环 for var i = 0, i < arg2, i++ then print("i = ", i) end -- 数组 var a = array() a[1] = 3 -- 集合 var b = map() b[a] = 1 b[1] = a -- Int64 var uid = 1241515236123614u log("uid = ", uid) -- 子函数调用 var ret1, var ret2 = myfunc2() -- 其他包的函数调用 ret1 = otherpackage.test.myfunc1(arg1, arg2) -- 结构体 var tt = teststruct() tt->sample_a = 1 tt->sample_b = teststruct() tt->sample_b->sample_a = 10 -- 分支 switch arg1 case 1 then print("1") case "a" then print("a") default print("default") end -- 多返回值 return arg1, arg3 end
Java示例
#!java // 创建一个实例 fake f = fk.newfake(null); // 注册包里全部标记@fakescript的函数 fk.reg(f, "com.test"); // 解析fake脚本文件 fk.parse(f, "test.fk"); // 执行myfunc1函数,传入两个参数分别为1和2 double ret = (double)fk.run(f, "myfunc1", 1, 2);
评论
cppsCPPS是一种轻量级的嵌入式脚本语言,其语法类似于C++。
cpps script欢迎CPPS 是一个功能强大,运行速度快,容易上手的解释型脚本语言,非常容易学
cppsCPPS是一种轻量级的嵌入式脚本语言,其语法类似于C++。
0
cppsCPPS是一种轻量级的嵌入式脚本语言,其语法类似于C++。
cppsscript欢迎CPPS是一个功能强大,运行速度快,容易上手的解释型脚本语言,非常容易学习和使用,并且可以很容易的嵌入到C++项目中。CPPS被设计的初衷是让那些和作者一样不喜欢LUA,PY,
cppsCPPS是一种轻量级的嵌入式脚本语言,其语法类似于C++。
0
DataCarrier轻量级嵌入式 MQ
DataCarrierDataCarrier是轻量级,嵌入式,高流通量,发布订阅模式的MQ.特点订阅式MQ.支持多商家与多用户。轻量级与嵌入式,jdk1.6.中的迷你Java库。高流通量,用于 Sky
DataCarrier轻量级嵌入式 MQ
0
Bao轻量级嵌入式虚拟机管理程序
Bao 是一个轻量级、开源的嵌入式虚拟机管理程序,旨在提供强大的隔离和实时保证。Bao提供了分区管理程序架构的最小的实现。Bao主要针对混合临界系统而设计,非常注重隔离以实现故障遏制和实时行为。它的实
Bao轻量级嵌入式虚拟机管理程序
0
AliOS Things轻量级物联网嵌入式操作系统
AliOS Things 是 AliOS 家族旗下的、面向IoT领域的、高可伸缩的物联网操作系统。A
AliOS Things轻量级物联网嵌入式操作系统
0