wenyan编程关键词构造的个人看法
konggujushi opened this issue · 5 comments
文言文的范畴:
- 只要不是白话,表述高效而精准到位才是文言文(中文)应有之特点;
- 要历史地而又发展地看待文言文。请思考:秦始皇统一文字之时,究竟什么方案或者说有没有应该、如何确定文字方案才是最佳最优选择?国共简化文字的尝试又有什么现成的或最佳的方案?后人该不该、该如何发展人类硕果仅存的真正意义上的文字?
- 以wenyan为例,当前方案是否是唯一乃至最佳的选择?
wenyan编程关键词构造的其它可能:
- 至少在文言表达可选方案中,尽可能简练是应该的:不至于源码中的关键词语句太过冗长,以至于有喧宾夺主之感,编码效率也是不够理想。如:
吾有一數。曰三。名之曰「甲」。
為是「甲」遍。
吾有一言。曰「「問天地好在。」」。書之。
云云。
可否改成:
整数三。曰以「甲」。
终于「甲」。
文曰「「問天地好在。」」。显之。
遍之。
- 未必成熟的看法,还有:
吾有一術。名之曰「埃氏篩」。欲行是術。必先得一數。曰「甲」。乃行是術曰
……
吾有三言。曰「「與君」」。曰「酒數」。
曰「「杯酒。可以窮歡宴。綠酒一杯歌一遍。」」。
……
多参数皆需人工指定参数数量(本质是定义匿名数组吧),是否有改进的必要?如:
術曰「埃氏篩」置以:实数曰「甲」。实数曰「乙」。为参。
……
组:曰「「與君」」。曰「酒數」。曰「「杯酒。可以窮歡宴。綠酒一杯歌一遍。」」。显之。
或:
组:曰「「與君」」。曰「酒數」。曰「「杯酒。可以窮歡宴。綠酒一杯歌一遍。」」。曰以「甲」。显「甲」。
……
向人类硕果仅存的真正意义上的文字致敬!向该项目的所有贡献者致敬!也请见谅!
文言文的精炼特点有很多表现,比如用单字表示一个动作🤔我的想法是这样的:
数三曰「甲」。
数零曰「乙」。
文「敬天地」曰「丙」。
若「乙」小于「甲」恒
书「丙」。
「乙」加一。
之
或者
数「甲」为三。
数「乙」为零。
文「丙」为「敬天地」。
若「乙」小于「甲」恒
书「丙」。
「乙」加一。
之
用单字“数”来表示声明一个数字,“文”表示声明一个字符串,“为”表示赋值,“书”表示打印到控制台。
用若...恒...之
的结构来表示条件循环结构(类似于while(...){...}
的结构),三个单字分别表示判断、循环、语义块结束。
分支结构可以用若...则...否则...
、若...则...否则若...则...否则若....则...否则...
(if (...) {...}else if(...) {...} else if(...) {...} else {...}
)。
然后可以编译成(还可以编译成typescript代码):
var 甲 = 3;
var 乙 = 0;
var 丙 = '敬天地';
while(乙 < 甲){
console.log(丙);
乙 += 1;
}
另外其实在使用现代字符、词汇的时候可以更大胆一些🤔
比如用“〇”代替“零”,用简体字这种。
我很尊敬文言编程这个概念,不过语法确实太啰嗦了。
特别是 吾有一數。曰三。名之曰「甲」。
这里赋值和命名都用了 曰
,感觉不是很清晰。
上面两位的思路我觉得都是很好的方向。
个人认为最好的写法是关键字全部两个字以内,否则不具备实用能力。
并且由于中文的多音字和中英文输入法切换,可能需要辅助插件才能解决这个问题。输入如果通过字形输入法会更好,比如五笔输入法,不基于拼音,不过这个会加剧开发人员学习成本。
中文编程,依然任重道远。
此处是随便想象的一段伪代码,语法类似于 Python 格式与 Java 声明格式。
数 A = 3
数 B = 4 // number
辑 旗帜 = 假 // bool
文 测试 = 空 // string
数[] 测试数组 = [1,2,3,4,5,6,7,8,9]
// if
若 A > B
输出 A
则
输出 B
// while
循 A != B
A += 1
// 数组循环
循 i=0; i<测试数组.长度; i++
输出 测试数组[i]
// 类定义
类 管理员 继 用户 // class admin extend user
公开 文 用户名 // public username:string
公开 辑 是否管理 // public isAdmin():bool
函数 下线(数 下线时间戳) // function xx(time:number)
输出 “用户${本体.用户名}于${下线时间戳}下线”
// 中文的一大优势就是每个字都有单独的意思,不像字母脱离上下文就失去了意义。
// 所以很多事情,都可以通过简单约定实现关键字全部为一个字,并且很容易成为助记符。
我认为不要一味的放弃字母和计算字符,因为在数学领域,这些都是通用的,不需要非得用中文表示大小(如:大于,小于)。
贊同,漢字的優勢和字母的優勢要結合,兼容并包,利用好各自優勢,結合一下。
@unitwk 你指望它实用么? 想多了. 这个本来就是"玩"的, 趣味性为主.