- 2
- 0
- 约1万字
- 约 9页
- 2017-11-29 发布于贵州
- 举报
【精选】1背景2表述风格
CSE 语言风格
Wayne Chan 20 11 年
1.背景
在介绍CSE 语言风格之前 我们不得不提及这门语言要解决什么问题?有什么样的定位,就
有什么样的方案策略,语言风格便是这种应对策略的外在表现。
上世纪六、七十年代是编程语言的爆发期 目前大家常见的Basic、C、C++、Ada、Pascal、
LISP 等都产生于那个时代 而近十年编程语言又出现另一轮复兴,由于计算机硬件性能的
提升 多核技术普及 以及无处不在的网络化编程需求,都推动了众多新兴语言的产生与发
展 CSE 也产生于这一时期 顺应了新时代编程技术的发展潮流。
更具体来讲 当前流程的C/C++、C#、java、python 等语言并没有很好的满足人们需求 尤
其在快速开发与高效代码运行上得不到较好平衡。编程语言繁杂众多 选择C/C++等编译语
言可保证运行效率 但损失开发效率 选择python、ruby 等脚本语言保证了开发效率但损
失运行效率 开发人员常陷于两难困境。开发CSE 语言的主要目标就是要解决这一困境 把
基于编译的命令式语言与基于解释性的声明式语言揉合一起 让两者各自发挥优势。此外
CSE 还定位于通用领域的编程语言 新兴语言的常见特征 诸如多核、并发、网络化编程支
等 也将体现在这门语言中。
2.表述风格
从揉合命令式与声明式语言的角度出发 CSE 该具有多种面孔 其表达方式应兼容过程语言、
面向对象语言,及脚本语言的主流描述形式。为此 CSE 内核采用纯正的函数式架构 把常
见编程语言的各种语法抽象成4 种操作:
一元操作(unary operator)
二元操作(binary operator)
标记操作(notation operator)
变元操作(variety operator)
组合使用这4 种操作 即支撑起形形色色的语言表述要求。
举例来说 CSE 支 的一元操作如:“++”、“!”、“const”、“virtual”等,一元
操作的操作符既可以写在操作数之前也可写在操作数之后 如下写法都是正确的:
++iValue;
iValue++;
i as const TInt;
i as TInt const;
二元操作如:“as”、“=”、“at”、“+”、“-”等,大部分数学运算符是二元操作符
二元操作固定用 “data1 op data2”形式表达 比如 “3 + 4”。
标记操作分左标记(LNotator)与右标记(RNotator)左右标记总是成对使用的 如:“(”
与 “)”、“@(”与 “)”、“[”与 “]”、“{”与 “}”、“if”与 “end”、“while”与
“end”、“func”与 “end”等。标记操作描述一种可带若干个参数的操作 参数个数不确
定 可以是0 个 也可以成百上千 甚至数万个。比如用 “(”与 “)”括起来表达函数调用
用 “[”与 “]”表达取数组下标成员 用 “if”与 “end”表达if 语句块。
变元操作可跟据前后表达式的性质自动转化成一元操作、二元操作 或者标记操作 变元操
作有:“module”、“dummy”、 “else”、 “throw”、 “try”、 “lambda”等。变元用
作一元操作如:“throw meet error;” 变元用作二元操作 如:
if pMsg == NULL:
print(OK);
end else print(failed);
else 表示二选一执行 它连接if语句块与其后的print语句 这时它是按二元操作符使
用的。变元也可用作标记操作 如:
if pMsg == NULL:
print(OK);
end else:
pMsg = NULL;
print(failed);
end;
这里else 既用作二元操作(连接if语句块及else语句块) 也用作标记操作,由左标
记“else”与右标记“end”组成一个语句块。
变元操作在模拟常规编程语言的书写习惯时发挥重要作用 比如throw 操作可写成函数调用
形式(转成标记操作):“throw(ESystemError,meet error);”,又如#module
可写成函数调用方式 “#module()”,表示 取当前自然模块 与 “.”取成员操作连用可
写成“#modu
您可能关注的文档
- 【精选】1789年4月30日.doc
- 【精选】175929wkutrrnqr3qrur8s.pdf
- 【精选】17cn教你什么是石材.doc
- 【精选】17《古诗两首》.doc
- 【精选】17.失根的兰花.ppt
- 【精选】17_理正软件使用方法.doc
- 【精选】17.机动车交通事故责任纠纷处理及应对指引.doc
- 【精选】17中等职业教育汽车运用与维修专业指导性人才培养方案.doc
- 【精选】17年10月清考《人事培训与开发》考核作业.doc
- 【精选】17、古诗两首的生字.ppt
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 我们仨电子版.pdf VIP
- 妇幼保健院十五五发展规划.docx VIP
- 小学生必背古诗75首(打印版).pdf VIP
- 期末重难点检测卷(含解析)-2026年数学三年级下册北师大版.pdf VIP
- ZXK-7532数控立式钻铣床主运动、进给系统及控制系统的设计.doc VIP
- 2025至2030中国碳纤维复合材料在航空航天领域应用现状及投资机会报告.docx
- 雅马哈psre313使用说明书.pdf VIP
- 临床成人患者医用粘胶相关性皮肤损伤预防及护理-MARSI.pptx
- 电力行业深度:算力之争,电力为王,聚焦美国AI能源革命核心赛道.pptx VIP
- 房地产上市公司偿债能力分析【文献综述】.docx VIP
原创力文档

文档评论(0)