如何用汉字写程序(汉字变化过程)?如果你对这个不了解,来看看!
我已经完全性地找到了中文汉字编程的方法,下面是全民编程是有意义的目给大家的分享,一起来看看。
如何用汉字写程序
终于,
我已经完全性地找到了中文汉字编程的方法,
从16年开始找, 找了那么多年, 原来事实的源头是如此的简单又实用,
用一句话就可以简单描述过程, [用栈思维创造的栈语言]. 栈思想甚至可以上升到哲学范畴.
因为栈说白了就是个容器, 生活中可以用栈来抽象的容器实在是太多了,小到身边见到的一切,平常所用的大多数日用工具,大到宇宙,
为啥用了这么多年, 因为我被困在了C语族的迷局里, 在网上能找到的所有文章帖子教程, 甚至交流社区和群里,
全都是C语族的内容, C语族就是自Fortran以来, 包括C C++ Java Python Rust ...等等, 反正就是这一类全部代码,
形成的屏障壁垒大到难以想象, 而C语族是最不适合搞中文汉字编程的, 我以前没发现这一点,
直到我跳出这个局以后, 了解并尝试并实践了以lisp与forth为代表的其它语族的用来构造程序逻辑的方法以后,
我发现了新的天地,
同时也对比了与C语族的差别后, 彻底看清了C语族迷局的本质,
C语族以中缀表达式为主,掺杂少量前缀和后缀表达式,并且选取数学公式那样类似的形式演算方法,
它的特点就是既远离人类,也远离计算机,也就是两边都不讨好,虽然偏向数学公式,但又不完全是,只是模仿了公式的形,
其实就是个四不像,这就是它为啥那么难用难学的原因,
又必须要有一个抽象的计算过程-编译器,和庞大的库去完善它自身的缺陷和不足, 所以C语族可以概括为面向函数库编程,
它的冗余也是越来越大, 占的空间越来越多, 但是实现的功能却不多, 就那几样, 所以硬件的缓存和存储空间也发展得越来越大,
但大部分都是在重复,
而以前缀表达式为代表的lisp,就完全没这个问题,因为它没有变量这个概念,或者说它的变量是不变的,
所以也就不会存在冗余, 因此也就不会占用巨大的存储空间来表达实现功能的逻辑,
lisp是可以完全实现中文汉字编程的, 因为它以S表达式, 即-符号表达式为基础,
符号顾名思义就是用各种符号,这就不局限于数学符号还是自然语言的文字符号了,
唯一的不足就是有括号,会隔开汉字和词语句段, 当然,有些人会认为这是结构化,
所以这是仁者见仁智者见智的事.
所谓中缀前缀后缀, 这个描述对应的是, 操作码和操作数在形式逻辑上的位置,
还有个说法就是数学表达式 波兰表达式 逆波兰表达式. 其实这三者是相等的,
中缀对应数学表达式,就是操作码在中间,操作数在两边.
前缀对应波兰表达式,就是操作码在前面,操作数全在后面.
后缀对应逆波兰表达式,就是操作码在后面,操作数全在前面.
lisp选用前缀,带来了简洁优雅的描述程序逻辑的方法,并且视程序和数据为一体,这是前缀的波兰表达式带来的好处,
forth就是后缀的逆波兰表达式这类,它更适合中文汉字编程,因为它连括号都没有了,它完全不需要括号来概括编程语言的语法,
因为它的操作码在操作数的后面,这对人类来说几乎是最自然的表达方式,你可以把操作数看做是栈顶,而操作码看做是栈底,
[要做什么事,先准备材料,之后执行]. 就是这么简单, 每个细分的步骤都是这句话自身的递归, 它可以往下递归, 也可以往上递归,
有些人觉得这很反人类, 其实它只是不适合当语言或口语话语来用, 但非常适合做文字书面表达, 其实是工程处理的利器,
并且,它还很适合指令式计算机的计算, 即便是C语族那么多语言的编译器到生成代码这一步骤的时候, 也大多是用后序遍历来实现的,
然后又把顺序改为前缀和中缀去生成机器码, 这种冗余这种多此一举, 在C语族里到处都是,
计算机它天然就适合后缀表达式, 处理器的执行过程,就是先要准备操作数,然后丢给操作码执行, 先执行操作码就需要等待操作数到齐了才行,
forth这类栈语言它不适合用C语族的思维来看待, 它适合用栈思维去认知,
栈语言它不需要像C语族那样每个计算阶段都要用不同的工具链来实现,也就是不同的编程语言来做一件小事,
它可以直接从机器语言开始定义到高级语言,甚至人类语言, 这是由栈思维的逻辑本质决定的,
首先我们拥有的材料是电路构成的逻辑门,逻辑门构成的机器指令,机器指令由01001100这种形式表达, 当然,平常我们使用的时候都是把4位二进制转为1位十六进制来用的,
由16进制组成的机器指令我们可以构造更高级的语素, 因为汉字也可以用16进制来表示, 所以这时候我们可以用16进制存储的汉字表示某一单独的语素,
比如标点符号 偏旁部首 点横竖撇捺,或直接的单个汉字, 当然,这不是随意可以与机器指令绑定的, 我们得找出语意与指令的语义等同的汉字来绑定,
比如真1 假0, 与 或 非, 加减乘除,等等,
选用不同的汉字绑定操作码和操作数,根据汉字的意义来实现, 我们就可以得到一套基本的表达逻辑,
在此基础上,可以组合成复杂的逻辑, 单个字与词句所表达的意义肯定不同, 但这却可以用栈语言容纳, 因此,并不是说3千5千个常用汉字用完了就没法表达,
我们还可以定义词语 句子来表达复杂的逻辑概念, 而这一样可以被栈语言接受容纳和执行,
为什么呢? 你看我们看一本书, 我们要看完才知道整个内容的意义,对吧? 这其实就是栈思维的一种抽象体现,
你看书里章节的内容相当于是一份一份地存储在栈顶,当你看到书后面结尾的时候,内容增加就不断地推到栈底了,
当你看完的时候,全部内容就从栈底返回,你经过归纳总结就知道了整本书的内容在表达什么意义, 怎么样? 栈思维可以概括这个过程吧,
既然可以用栈思维来陈述,那么就可以把它通过栈语言转化为程序逻辑, 所以你可以用栈语言定义机器语言到高级语言甚至人类语言所需描述的一切,
而其原理却是如此的简单,将人类的表达与计算机的表达完美合一, 真正的大道至简,
//
原来函数式编程就可以实现中文汉字编程,真是踏破铁鞋无觅处.而forth这样的栈语言也可以实现,无非就是知名度小,生态也少得可怜.想想从16年始不断寻找中文汉字编程道路,到底走了多少弯路,又在C语族family内撞得头破血流,还被C语族的垄断者(学阀/编程文人)洗脑PUA语言暴力,企图扭曲我的编程认知,真是皇天不负苦心人,终于被我给突破了这层层难关与屏障与壁垒.
基于S表达式的函数式编程lisp,完全就不局限于某一单一品种的符号,S就是symbol,符号嘛,我想麦卡锡在设计lisp的时候,应该一早就考虑到这个符号是指地球上所有的符号,有史以来人类创造的所有符号,而不仅仅局限于字母或数学符号.C语族真是一个巨大的天坑,
还真是退一步海阔天空,一条道走不通了,立即换准没错.
希望中文汉字编程的爱好者们都来函数式编程lisp建生态, 用符号表达式写各种库,都用中文汉字来写,壮大中文编程生态,直到量变引发质变,彻底从零构建起中文编程!
因为基于符号表达式的lisp,完全通吃高级语言到机器语言全范围,它本来就可以在裸机上用机器指令构造原语,然后不断迭代和自举进而完善语言本身,当然也可以在裸机上从零开始写操作系统.真是期待中文汉字编程生态强大到能创造出设计lisp芯片,直接把原语固定为电路里的指令,那么程序的速度应该会远超C语族,期望这一天早日实现.
忘了说,栈语言例如forth也是可以实现lisp的成就,并且还没有lisp的括号,lisp唯一的缺点就是括号太多,而栈语言连括号都不需要了,并且lisp具有的语言特性,栈语言一样包括,遗憾的是,栈语言的生态比lisp还小,发展到今天为止,对中文汉字的支持都还没有,主要是知道栈语言的人太少了,更不了解它的特性,并且栈语言一样可以从机器语言开始定义原语,从零写操作系统,一样可以承载中文汉字编程,因为栈语言的语义一样是高度抽象的,它甚至不局限于符号,期待这种好东西能被更多人发现,创造出我们的中文汉字编程生态.
汉字变化过程
以好学易用为目标的简化是汉字演化发展的客观规律。
笔画是汉字演化的自然产物。今天的汉字是成熟的笔画文字,所有笔画包括点和捺笔画都是汉字长期演化的自然结果。隶变是汉字发展史上最重要的里程碑,它标志着古汉字开始向现代汉字演变。有了隶变,才有了今天的汉字。通过隶变,汉字由小篆变成了隶书。隶变是古今汉字的分水岭,隶变后的汉字,与现在的汉字相似。
隶变是将小篆的直线和曲线,变成了顺应毛笔笔锋的点提横竖撇捺折钩,并将其布置到书写顺手且美观的位置上。隶变是快速书写的产物。
汉字由篆书演变为隶书的过程。字型变圆形为方形,线条变弧线为直线,笔画变繁杂为简省,彻底笔画化。隶变是古今汉字的分水岭。
从考古发现的秦系文字的资料上看,战国晚期是隶书的形成时期。在秦孝公时代的铜器铭文里,就可以看到正体和俗体并存的情况,秦孝公以后,随着书写的频繁,俗体也随着越来越流行,在铜器铭文、漆器铭文、以至印文、陶文中都可以看到俗体字。这些字体,改变了正规的篆文圆转的笔道而带有着隶书的意味。从现有的秦简文字材料看,隶书在战国晚期已经基本形成。
由篆书变为隶书,是汉字形体演变过程中最重要的一次变革。隶变主要有以下五个特点:
a、解散篆体,改曲为直:隶书不再顾及象形原则,把古字“随体诘诎”的线条分解或改成平直的笔画,以便书写。
b、偏旁分化:在隶书里,独立成字和用作偏旁的写法明显不同。
c、偏旁混同:隶书以求简便,把某些生僻的或笔画较多的偏旁,改成形状相近,笔画较少,又比较常见的偏旁。
d、结构简省:隶书往往把篆文的两笔并为一笔,或是把两个以上的偏旁或偏旁所包含的部分合并起来,改成较简单的笔画结构。
e、圆转不断的线条变为方折的断笔:隶书为提高书写速度,形成点、横、竖、撇、捺、钩、折等笔画。
通过简化达到好学易用的目的是汉字演化发展的总体原则,简化是客观规律,简化措施有四类:规范笔画、规范汉字、减少笔画、减少汉字。
新中国成立后继续新文化运动和民国时期未能完成的汉字简化工作,于1956年1月31日通过《人民日报》全文发表了国务院的《关于公布汉字简化方案的决议》和《汉字简化方案》,并最终制定出了一个《简化字总表》,给简体字以法定地位。1977年曾推出过《第二次汉字简化方案(草案)》(二简86年废止)。
出于统一文字字形,规范汉字形态的目的,中华人民共和国文化部和中国文字改革委员会于1955年12月联合发布了《第一批异体字整理表》,并于次年2月起实施,该表淘汰了1055个异体字。
汉字的数量并没有准确数字,大约将近十万个,日常所使用的汉字只有几千字。据统计,1000个常用字能覆盖约92%的书面资料,2000字可覆盖98%以上,3000字则已到99%,简体与繁体的统计结果相差不大。
汉字由最原始的石刻字符在几千年的演变过程中形成了“汉字七体”,即:甲骨文、金文、篆书、隶书、草书、楷书、行书。
汉字的造字法是古人根据汉字的结构和造字规律,归纳总结出来的造字方法。汉字造字法有六种,又称“六书”---象形、指事、形声、会意、假借和转注。“六书”最早出现在《周礼》。
现代汉字是指楷化后的汉字正楷字形,包括繁体字和简体字。现代汉字即从甲骨文、金文、大篆(籀文)、小篆,至隶书、草书、楷书、行书等演变而来。汉字为汉民族先民发明创制并作改进,是维系汉族各方言区不可或缺的纽带。现存最早的汉字是约公元前1300年殷商的甲骨文和稍后的金文,西周时演变成籀文,再到秦朝的小篆和隶书,至汉魏隶书盛行,到了汉末隶书楷化为正楷。楷书盛行于魏晋南北朝,至今通行。