cnCalc计算器论坛

 找回密码
 注册
搜索
查看: 24075|回复: 33

[fx-9860/9750系列] [Add-in]Malical 2.15[我要专家]

[复制链接]
发表于 2011-6-30 22:03:37 | 显示全部楼层 |阅读模式
计算器程序
程序名称: Malical Language 2.15
平台: fx-9860GII fx-9860G & Slim fx-9750GII 
系统/软件要求:
版本号: 2.15
类型: 其他 
作者: Anderain Lewis (Diameter)
大小(K): 45
更新日期: 2011-06-30
描述: 添加数组功能
已知缺陷: 敬请找茬
源代码: 闭源
本帖最后由 diameter 于 2011-6-30 22:12 编辑

Anderain Lewis(Diameter)的9860G拓展脚本解释器。
我们的口号是——比PRGM做的强,比PRGM做的好!

添加数组功能,内附详细的介绍。
摘录:
2.变量、表达式
Malical中,使用var<变量表...>(例:var[a][c])来声明一个变量。(与一些语言不同)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]
a = {[1][true][{}][nil]}
print [a[0]] #=>输出1.000000

在Malical中,赋值运算符是“=”
例子:
var [a]

a = 1
a = a+1
a = {[false]}
a[0] = not a[0]

MALICAL.rar

64.78 KB, 下载次数: 123, 下载积分: 金钱 -1

评分

参与人数 2金钱 +5 收起 理由
GWHBOB + 2 优秀文章
lch + 3 鼎力支持

查看全部评分

 楼主| 发表于 2011-6-30 22:06:40 | 显示全部楼层
根据数组的定义,可以很轻松的构造矩阵
  1. var [a][i][j]
  2. a = {}
  3. i = 0
  4. j = 0
  5. while i<10
  6.     push[a][{}]
  7.     j = 0
  8.     while j<10
  9.         push[a[i]][0]
  10.     end
  11. end
复制代码
 楼主| 发表于 2011-6-30 22:11:02 | 显示全部楼层
还是把Malical写的3DFP贴出来
未命名.JPG
发表于 2011-7-1 09:12:22 | 显示全部楼层
……有点像Pascal,算了,顶一下。
尽管我不太喜欢Pascal。
发表于 2011-7-1 12:11:06 | 显示全部楼层
希望能够加入程序加密功能
发表于 2011-7-1 12:11:51 | 显示全部楼层
根据数组的定义,可以很轻松的构造矩阵
var [a][j]
a = {}
i = 0
j = 0
while i
diameter 发表于 2011-6-30 22:06

这还叫轻松。。。。
 楼主| 发表于 2011-7-1 15:03:44 | 显示全部楼层
……有点像Pascal,算了,顶一下。
尽管我不太喜欢Pascal。
l5h5t7 发表于 2011-7-1 09:12

不会是因为变量声明用var就觉得像Pascal吧……
Malical在内涵上应该更接近Ruby或者Lua……
发表于 2011-7-1 16:20:54 | 显示全部楼层
7# diameter


因为要声明变量,就像Pascal。
发表于 2011-7-1 18:34:49 | 显示全部楼层
至少要给个程序加密功能吧。不然和PROG没什么区别
发表于 2011-7-2 15:36:02 | 显示全部楼层
9# imz


没用的,我不提倡加密,加密了也会被解密。
还有,纯文本怎么加密?
发表于 2011-7-2 15:37:15 | 显示全部楼层
下一版本可以提供程序压缩,并可以直接运行压缩程序。
发表于 2011-7-2 20:15:32 | 显示全部楼层
提点小建议。。 编程环境受到TXT编辑器的限制。。。建议改一下TXT编辑器,使之能一键输入函数命令,并丰富其中的CHART,和PRGM的CHART(有特殊符号,小字等)一样就好啦。
发表于 2011-7-2 21:10:28 | 显示全部楼层
12# py86546539


对,就像PRGM一样。
发表于 2011-7-3 18:07:23 | 显示全部楼层
7# diameter


因为要声明变量,就像Pascal。
l5h5t7 发表于 2011-7-1 16:20
不会吧,要声明变量的只有Pascal一种?!
 楼主| 发表于 2011-7-3 18:10:15 | 显示全部楼层
不会吧,要声明变量的只有Pascal一种?!
bruce55 发表于 2011-7-3 18:07

静态语言都要声明变量吧……
发表于 2011-7-3 18:12:53 | 显示全部楼层
15# diameter


BASIC不用。

评分

参与人数 1金钱 +1 收起 理由
diameter + 1 废话

查看全部评分

发表于 2011-7-3 19:39:46 | 显示全部楼层
16# l5h5t7




Quick Basic 等等等等是不用,但是极易造成程序混乱,虽然说在最新的
Microsoft Visual Basic 2010 上允许不对变量进行声明就立即使用的开关,不过一般不允许这么做,很多脚本语言都要声明,何况面向对象编程语言呢。

不过,批处理命令不需要声明,应该是 set VaribleName 就好了。
发表于 2011-7-3 19:40:49 | 显示全部楼层
建议对UI进行优化,文件浏览器建议参照 EDIT.G1A 的源代码 进行改进。
发表于 2011-7-3 19:42:49 | 显示全部楼层
10# l5h5t7



Xor 法加密。 利用 ASCII 的特性,不过好像不支持中文。

评分

参与人数 1金钱 +1 收起 理由
l5h5t7 + 1 没必要。

查看全部评分

发表于 2011-7-6 20:24:15 | 显示全部楼层
a={[236][{[{[2][3]}][4]}][nil]["1234"]}?!!这样连type都不用了!不过效率……
希望类型冲突能友好解决

评分

参与人数 1金钱 +3 收起 理由
diameter + 3 感谢支持,会改进的

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cnCalc计算器论坛

GMT+8, 2024-3-29 03:12 , Processed in 0.045418 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表