0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

从Unix视角看文言文为什么短不能用呢

Linux阅码场 来源:Linux阅码场 2023-03-30 09:11 次阅读

文言文为什么短?

我是搞网络的工人,略懂文字,从Unix视角谈。

Unix/Linux程序很像文言文,列举一些:

ls, pwd, sed, awk, ab, bc, cd, cc, cat, dd, df, ex, fg, ip

不是干这一行的基本不明白上面这些命令是干什么的。

再看一些文言词:

汝 子 若 君 尔 彼 其 或 所 何 安

是不是很像。这里面有什么关联?

存储开销

Unix早期磁盘磁带昂贵,古代龟甲竹简丝帛纸张昂贵,信息越短越好。

传输开销

Unix早期直到1990年代,网络带宽小且昂贵,古代书信运输手段有限且昂贵,信息越短越好。

持久化开销(写开销)

Unix早期键盘简陋,分时使用终端,需快速输入,古代识字写字成本高,会挤兑农时,信息越短越好。

短信息实际是一种压缩,虽有利于存储,传输和持久化,但解压缩成本也高,无论Unix命令还是文言文,都需要时间来记忆,会就会,不会就不会,Unix尚有manual,文言文就只能靠昂贵的教育了。

无论是Unix短名字,还是文言文,随着时间的发展都成了一种文化,虽然我们现在依然会说ipt,但大多数人还是喜欢iptables这个名字,同理,我们也不会再满嘴之乎者也。

时至当代,存储开销,传输开销,持久化开销已不再是问题,Linux程序逐渐以system替换了sys,以network替换了net。

然而上述只是一条线,还有另一条线。

文言文对应的有口语白话文,Unix程序对应的有源代码,或者叫编程语言写的程序。

持久化存储的信息需压缩至简,这是受到一些限制不得已而为之,但如果日常交流也这般,非但不会有收益,还会平添开销,你先跟对方说个谜语,再自己解释这个谜语,岂不是冗余?

因此在无需存储,无需传输的直接交流场景,就是口语白话文了。

看一下sed源码中的一处定义:

/* Sed operates a line at a time. */
struct line
{
  char *text;                   /* Pointer to line allocated by malloc. */
  int length;                   /* Length of text. */
  int alloc;                    /* Allocated space for text. */
};

虽然很难理解sed是stream editor的缩写,但看它的源码却无任何障碍,源码不光是编译成二进制,更重要是它还是工人之间交流的媒介。如果你写的源码不能表意,交流成本就会变高,甚至不得不重写。

与文言文相对的白话也是为了交流,它重点考虑的是对方听懂。简单讲就是要直白。

直白的源代码,直白的口语,最大的优势是它们可以最小成本地适应变化。

编程语言不断变化,不断有新的编程语言问世,日常口语也根据地域,时间发生变化,直白的语言不需编解码,不需压缩解压缩,因此应对变化更灵活。

编程语言一直在演变,但二进制却没变,我们的口语也一直在演变,但写出来的文字却很稳定,这便是。

秦始皇书同文,并没有要求语同言,不是因为他做不到,而是他故意的。

写是一回事,说是另一回事,“写”是为了跨时空交流的,必须考虑存储,传输,持久化成本,“说”是为了当下交流的,是否直白几乎是唯一的考量。





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • UNIX
    +关注

    关注

    0

    文章

    296

    浏览量

    41423
  • 编程语言
    +关注

    关注

    10

    文章

    1939

    浏览量

    34605

原文标题:从Unix看文言文为什么短

文章出处:【微信号:LinuxDev,微信公众号:Linux阅码场】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    为什么AD9弄过来的原理图封装有的能用有的不能用

    请教一个问题 为什么AD9弄过来的原理图封装有的能用有的不能用 使用环境:pads9.5
    发表于 01-04 11:12

    LabVIEW做百度翻译助手

    做天气预报程序的时候,用过论坛一个UTF8_TO_GBK的VI,这个用此VI也没用,所以现阶段只能中译英了。更新:已经解决中文显示问题,现在可以实现多种语言的互相翻译,居然还有文言文的。要运行程序需要安装JSON API库,我已经下载好放在压缩包里面了,请先安装。
    发表于 07-28 11:41

    服务端视角高并发难题

    `所谓服务器大流量高并发指的是:在同时或极短时间内,有大量的请求到达服务端,每个请求都需要服务端耗费资源进行处理,并做出相应的反馈。 服务端视角高并发服务端处理请求需要耗费服务端的资源,比如
    发表于 11-02 15:11

    为什么我不能用DHCP获取动态IP地址?

    请问一下,我用开发板源程序做带系统的LWIP_TCP客户端实验时,为什么我不能用DHCP获取动态IP地址,只能是静态IP地址,我DHCP的定义为1,请问该如何解决?(其中开发板为stm32f103)@zuozhongkai
    发表于 11-07 04:21

    什么是UNIX操作系统

    ,是指继承UNIX的设计风格演变出来的系统。那什么是UNIXUNIX操作系统(尤尼斯)是一个分时系统、多用户、多任务操作系统。Linux是一个基于POSIX和
    发表于 11-04 07:29

    Linux上的RT***驱动不能用这个是为啥

    Linux上的RT***驱动不能用这个是为啥?如何实现USB转网口功能
    发表于 03-03 11:15

    如何解决allegro16.3的stroke不能用的问题

    如何解决allegro16.3的stroke不能用的问题.用习惯了allegro里面的stroke,安装了allegro16.3发现stroke不能用
    发表于 11-22 11:03 5308次阅读

    电脑usb接口不能用没反应怎么办

    我们在使用电脑时有时会遇到电脑usb接口不能用或是电脑USB没反应,可能很大部份人都遇到过这样的情况。下面是小编整理的电脑usb接口不能用没反应的解决方法。希望对大家能有所帮
    发表于 11-05 18:11 10.8w次阅读

    Unix是什么?比较Unix和Linux

    最初的根开始增长,“Unix战争”开始了,标准化成为了社区的一个新焦点。POSIX标准诞生于1988年,以及其他开源工作组的标准化工作一直进行到到20世纪90年代。
    的头像 发表于 07-25 17:06 5109次阅读

    文本(数据)挖掘的角度去“探索”全唐诗

    然而,对于古汉语(文言文),尤其是诗词的分词处理可没有这么简单,因为单字词占古汉语词汇统计信息的80%以上,再加上古汉语微言大义,字字千钧,所以针对现代汉语的分词技术往往不适用于它。鉴于此种情况,笔者采取的是逐字切分的处理方式,同时去掉一些常见的虚词,如“之”、“乎”、“者”、“也”。
    的头像 发表于 02-20 14:23 2245次阅读

    手机指纹不能用了如何解决

    手机解锁的方式以前的密码解锁到现在的指纹解锁,发展是非常的快,相比很多人都非常喜欢指纹解锁,方便又快捷,但有时候指纹解锁也会遇到问题。那么,手机指纹不能用了怎么办?下面将会为大家介绍。
    发表于 06-15 17:39 7922次阅读

    知道什么是虚和虚断

    “虚”是指在分析运算放大器处于线性状态时,可把两输入端视为等电位,这一特性称为虚假短路,简称虚。显然不能将两输入端真正短路。
    的头像 发表于 11-03 15:35 4.4w次阅读
    一<b class='flag-5'>文</b>知道什么是虚<b class='flag-5'>短</b>和虚断

    物联网流量卡到底能不能用

    物联网流量卡到底能不能用
    的头像 发表于 08-28 09:40 6226次阅读
    物联网流量卡到底能<b class='flag-5'>不能用</b>?

    Unix和Linux的差异

    摘要:程序员都知道,Linux 不是 Unix,不过二者之间确实存在关系,即 Linux 系统是 Unix 派生出来的,而 Linux 是一个类 Unix 的操作系统。那么,二者之间
    发表于 09-04 12:42 599次阅读

    什么情况下不能用和虚断?集成运放虚虚断的条件

    什么情况下不能用和虚断?集成运放虚虚断的条件  虚和虚断是指将两个电路中的节点用一个“虚接点”连接起来,形成一个等效电路的方法。虚
    的头像 发表于 09-20 16:29 7036次阅读