[Add-in]Malical 2.15[我要专家]
本帖最后由 diameter 于 2011-6-30 22:12 编辑Anderain Lewis(Diameter)的9860G拓展脚本解释器。
我们的口号是——比PRGM做的强,比PRGM做的好!
添加数组功能,内附详细的介绍。
摘录:
2.变量、表达式
Malical中,使用var<变量表...>(例:var)来声明一个变量。(与一些语言不同)Malical变量没有类型,变量的值才有类型。在运行期间变量可以赋一下任何一种类型的值。在函数外声明的变量是全局变量,全局可以共用,而在函数内声明的只能在函数调用期间使用。
NIL、BOOLEAN、STRING、NUMBER、REFERENCE、ARRAY
其中REFERENCE是系统内部类型,用户无法使用。
NIL类型
Malical中用nil来表示一个空值
nil是NIL类型唯一的值
BOOLEAN类型
Malical中用来表示true(真)、false(伪)的类型
true和false是BOOLEAN类型只有的两种值
支持的运算符:and、or、not
STRING类型
字符串.
例:"Hello World!"、"12332132adasd"
支持的运算符:+
NUMBER类型
浮点数
例:0.1321、3.1415926
支持的运算符:+ - * / ^ > >= < <=
ARRAY类型
数据集合(数组),其中每个元素的值可以是任何类型。
数组使用下标(“[”、“]”)访问。使用{值表...}构造
例:
var
a = {[{}]}
print ] #=>输出1.000000
在Malical中,赋值运算符是“=”
例子:
var
a = 1
a = a+1
a = {}
a = not a 根据数组的定义,可以很轻松的构造矩阵
var
a = {}
i = 0
j = 0
while i<10
push[{}]
j = 0
while j<10
push]
end
end
还是把Malical写的3DFP贴出来 ……有点像Pascal,算了,顶一下。
尽管我不太喜欢Pascal。 希望能够加入程序加密功能 根据数组的定义,可以很轻松的构造矩阵
var
a = {}
i = 0
j = 0
while i
diameter 发表于 2011-6-30 22:06 http://www.cncalc.org/images/common/back.gif
这还叫轻松。。。。 ……有点像Pascal,算了,顶一下。
尽管我不太喜欢Pascal。
l5h5t7 发表于 2011-7-1 09:12 http://www.cncalc.org/images/common/back.gif
不会是因为变量声明用var就觉得像Pascal吧……
Malical在内涵上应该更接近Ruby或者Lua…… 7# diameter
因为要声明变量,就像Pascal。 至少要给个程序加密功能吧。不然和PROG没什么区别 9# imz
没用的,我不提倡加密,加密了也会被解密。
还有,纯文本怎么加密? 下一版本可以提供程序压缩,并可以直接运行压缩程序。 提点小建议。。 编程环境受到TXT编辑器的限制。。。建议改一下TXT编辑器,使之能一键输入函数命令,并丰富其中的CHART,和PRGM的CHART(有特殊符号,小字等)一样就好啦。 12# py86546539
对,就像PRGM一样。 7# diameter
因为要声明变量,就像Pascal。
l5h5t7 发表于 2011-7-1 16:20 http://www.cncalc.org/images/common/back.gif不会吧,要声明变量的只有Pascal一种?! 不会吧,要声明变量的只有Pascal一种?!
bruce55 发表于 2011-7-3 18:07 http://www.cncalc.org/images/common/back.gif
静态语言都要声明变量吧…… 15# diameter
BASIC不用。 16# l5h5t7
Quick Basic 等等等等是不用,但是极易造成程序混乱,虽然说在最新的
Microsoft Visual Basic 2010 上允许不对变量进行声明就立即使用的开关,不过一般不允许这么做,很多脚本语言都要声明,何况面向对象编程语言呢。
不过,批处理命令不需要声明,应该是 set VaribleName 就好了。 建议对UI进行优化,文件浏览器建议参照 EDIT.G1A 的源代码 进行改进。 10# l5h5t7
Xor 法加密。 利用 ASCII 的特性,不过好像不支持中文。 a={[{[{}]}]["1234"]}?!!这样连type都不用了!不过效率……
希望类型冲突能友好解决
页:
[1]
2