原副标题:英文C词汇——青词汇开放源码正式发布
公司出品 | OSC开放源码街道社区(ID:oschina2013)
长期以来,英文程式设计始终是开发人员街道社区中争论急速的焦点问题。一小部分人指出,C词汇是概念化的词汇,没中文之分,因此英文程式设计没象征意义。
而另一小部分人会指出跨译名自学程式设计,存有实际上的十分困难,提升了自学准入门槛。这种的探讨在街道社区中始终关注度有增无减,正式成为历久不衰的热门话题。
尽管有关英文程式设计有众多争论,但这并没负面影响我们对其资金投入热情。前段时间又再次出现了这款捷伊开放源码英文C词汇——青词汇。
据悉,青词汇是两门面向全国青少年、儿童和非职业专业人士的英文C词汇。它全然从头开始同时实现了标识符文档到句法树的构筑, 词汇Mach参照了 Lisp, 句法上主要就参照了 Java, 以 C# 同时实现, 运转在.NET 网络平台上,并采用流程库 DLL 的形式扩充机能。
青词汇此基础句法概要
第二个流程
@表明、“晚安,程式设计当今世界”
注解
从分号到行末的都是注解,注解的内容不会作为标识符执行,以两个;;开头是多行注解,直到另一个;;
;这是一行注解,这里的内容作为对标识符的说明,不会被执行
;;
这是一段注解
支持多行注解
这部分内容都不会执行
;;
数据类型
空;空类型,表示不存有或者值为空
真;逻辑类型,表示逻辑真
假;逻辑类型,表示逻辑假
0xFF;二进制类型,表示二进制数据
123;这是整数
4.56;这是小数
“这是一段字符串”;用英文双引号括起来的部分是字符串
赋值
#甲 :123 ;用冒号表示在当前语境给变量#甲绑定值123
#乙 = 4.56 ;用等于号表示顺着语境链向上查找变量 #乙并绑定值4.56
取值
直接调用变量名,解释器会根据当前语境向上查找变量对应的值,并将值返回,例如经过上面的赋值之后,我们输入
#甲
将会看到这种的输出
>>123
这里,前面的 >> 是输出提示符,后面的 123 是变量对应的值。
示例标识符
贪吃蛇。该示例是一个图形界面流程,只能在青编辑器中运转。
@是墙 = @【#序】{
#序 小于 20
或
#序 大于等于 380
或
#序 模 20 等于 0
或
#序 模 20 等于 19
}
@随机食物 = @【】{
#序:0
执行 {
#序 = #数学库@随机数【400】
}直到
(取反 @是墙【 #序】) 且 (@查找【#蛇集合,#序】 小于 0)
返回 #序
}
#运转状态 = 真
#蛇集合 = 【110,109,108】
#食物 = 275
#方向 = 2
#下一方向 = 2
#窗 = @生成图形、《窗口 #宽=410,#高=440,#副标题=“贪吃蛇”》
#单元集合=【】
当 #行=0,#行 小于 20,#行 加等 1 {
当 #列=0,#列 小于 20,#列 加等 1 {
#单元:@生成图形、《面板 #宽=20,#高=20,#X=#列*20,#Y=#行*20》
@追加【#单元集合,#单元】
}
}
@初始化 = @【】{
当 #序:0,#序 小于 400,#序 加等 1 {
如果 @是墙【 #序】{
#单元集合#序#边框色 = “#009933”
#单元集合#序#边框宽 = 2
} 否则 {
#单元集合#序#背景色 = “white”
}
}
遍历 #蛇集合 为 #序 {
#单元集合#序#背景色 = “#333333”
}
#单元集合#食物#背景色 = “Red”
}
@初始化【】
#窗@加子集、#单元集合
#窗@键盘按下命令 = @【#按键】{
如果 #按键 等于 “Up”{
如果 #方向 不等于 3 {
#下一方向 = 1
}
}再则 #按键 等于 “Right”{
如果#方向 不等于 4 {
#下一方向 = 2
}
}再则 #按键 等于 “Down”{
如果 #方向 不等于 1 {
#下一方向 = 3
}
}再则 #按键 等于 “Left” {
如果 #方向 不等于 2 {
#下一方向 = 4
}
}
如果 #运转状态 等于 假 且 #按键 等于 “Space” {
#蛇集合 = 【110,109,108】
#方向 = 2
#下一方向 = 2
#食物 = @随机食物【】
@初始化【】
#运转状态 = 真
}
}
@表明窗口、#窗
#定时器 = @定时任务【300,元{
如果 取反 #运转状态 {返回 空}
#头:#蛇集合#0
#方向 = #下一方向
如果 #方向 等于 1 {
#头 = #头 – 20
}再则 #方向 等于 2 {
#头 = #头 + 1
}再则 #方向 等于 3 {
#头 = #头 + 20
}再则 #方向 等于 4 {
#头 = #头 -1
}
如果 @是墙【 #头】 或 (@查找【#蛇集合,#头】 大于等于 0){
#运转状态 = 假
返回 空
}
#单元集合#头#背景色 = “#333333”
@插入【#蛇集合,0,#头】
如果 #头 等于 #食物 {
#食物 = @随机食物【】
#单元集合#食物#背景色 = “Red”
}否则{
#尾 = @取出【#蛇集合,@取长度【#蛇集合】-1】
#单元集合#尾#背景色 = “white”
}
}】
@启动定时任务、#定时器
运转效果:
九九乘法表:
当 #甲:1,#甲 小于等于 9,#甲 加等 1 {
#文档:“”
#乙:1
当 #乙 小于等于 #甲 {
#文档 = #文档 + #甲 + “x” + #乙 + “=” + (#甲 * #乙) + “ ”
#乙 加等 1
}
@表明、#文档
}
上文提到青词汇后端采用 .NET,因此它同时实现了跨网络平台兼容,支持主流操作系统。本次开放源码正式发布即提供了各个主流网络平台的可执行流程,下载后可以直接运转采用。
除了桌面流程外,还提供了一个安卓端的 APP,能够同时实现手机上程式设计。
青词汇项目地址:
https://www.oschina.net/p/qingyuyan
https://gitee.com/NjinN/Qing
https://qingyuyan.cn/
最后,如果你想了解更多中国人主导的C词汇,请查看:
《中国人主导C词汇列表 》
Rust内部大乱斗不休止
Chrome将引入无边界模式
全网最抽象C词汇:内置“典”、“蚌”特性
这里有最新开放源码资讯、软件更新、技术干货等内容
点这里 ↓↓↓