CPN ML语言介绍(1)

1. 单元颜色集:单元颜色集由简单元素组成,标号为();

声明语法color name = unit [with new_unit]:

次序:不影响

从句选项:重命名这个值,定义标识符表示(),新值的名称必须是一个标识符。

声明示例color U = unit;    color E = unit with e;

2. 布尔颜色集:布尔值为真和假。

   语法声明color name = bool [with (new_false,new_true)];

   顺序:假在真前

   With选择性语句:重命名值就是定义表示真和假的标识符。新值的名字需要是标识符。  

   例子color B = bool;  color Answer = bool with(no, yes);

 布尔量操作:not b (布尔值b取非)b1 andalso b2(布尔值和,and); b1 orelse b2(布尔值或,or)

3. 整数颜色集:整数就是没有小数点的数字。整数颜色集一般很大,除非有字句作出限制

   声明语法 color name = int [with int-exp1…int-exp2];  

   顺序:整数的一般顺序

  字句的设定:把整数颜色集限制在int-exp1int-exp2之间,其中int-exp1小于等于int-exp2.  

   声明例子 color INT = int;   color SmallInt = int with 1..10;

   以上例子在简单协议中有引用。

   Var smallInt : SmallInt;

   CPN变量 smallInt可以在110的整数中取值,如,2是合法的,112.9是非法的。 

   操作 ~i : i的相反值; i1+i2   加法;i1-i2  减法;i1*i2  乘法;i1 div i2  除法,商;

    I1 mod i2  模,余数;abs I  i的绝对值; Int.min(i1,i2)  i1i2取小值;Int.max(i1,i2)

4.字符型颜色集  字符型是一个包含在双引号中的由可打印的ASCII码字符组成的序列。  

   字符串颜色集是大的,除非受限于with…and字句,在这种情况下就是小的。

 声明语法 color name = string [with string-exp1..string=exp2 [and int-exp1..int-exp2]];

排序 按照字母排序(ASCII码标准)

   可选的with字句:  限制字符串颜色集的字符集。字符集由字符串表达式string-exp1 string-exp2说明。每一个字符串表达式必须计算到一个长为1的字符串,同时必须是在string-exp1<=string-exp2的条件下。

   可选的and字句:  限制字符串颜色集的长度。由正数表达式int-3xp1it-exp2来表示字符串的长度,这必须是在 0<=int-exp1<=int-exp2的条件下。

声明例子  color S = string;   在例子简单协议中使用了一个字符串颜色集

   Color LowerString = with “a”..”z”;   var  lowerString : LowerString;

   CPN变量lowerString只能包含小写字母a,b,…,z.不如说,”ab””lowercase”是合法的值,但是”Lowercase letters””ab 45”就不是。

   Color SmallString = with “a”..”d” and 3..9    var smallString : smallString;

   CON变量smallString may 只能包含字母a,b,cd,长度大于等于3小于等于9.比如说”abcd””bbacdab”是合法的值,但是”ab””bcde”就不是。

操作 s1^s2  连接字符串s1s2;

 String.size s  s中字符的数量;

substring (s,I,len)提出一个由位置i开始、长为len的字串。注意串的起始位置为0

    lode s  转化为字符串s为一个字符的表;

implode 1 转化字符的表1为一个字符串

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值