为什么 Lisp 如此先进,却永远成为不了编程主流语言?
为什么 Lisp 如此先进,却永远成为不了编程主流语言? 圆角骑士魔理沙的回答 说到底Lisp的核心思想是什么? 无非就是‘我有宏,所以想要什么feature可以自己用宏实现,所以我是最好的语言,所以除了我以外的语言的程序员要立刻辞职,改行做原神代练’。 评价为玩原神玩的。 但是Lisp没有原神。 要做出原神,我们需要写很多的框架,很多的库,很多的语言feature。 比如我要写一个网络库,而为了下载原神素材的时候还能响应其他事件,我们要Async IO,依赖库A。 如果另一个文件操作库用Async IO库B呢?那原神就只能有网络下载或者有文件读写,有一个奇怪的二选一。 同理你不能pytorch写半个网络tensorflow写半个网络,或者Qt写半个GUI,剩下半个用react,或者Unity整半个游戏Unreal整剩下半个。。。 或者,如果你是个公务员,你也知道所谓的数据互联(不就是把数据库的两个表变成一个吗?)背后有多少麻烦事。当然,如果你再聪明一点,就知道你的一辈子其实就是在人肉数据互联。还不如在家玩一辈子原神。 库跟数据库表都有这么多不兼容性,何况编程语言特性? 到最后,无非是自底向下的,一组互相兼容的库/宏在竞争中胜出,又或者是自顶向上的,有一个BDFL或者委员会,制定一组互相兼容的库/宏。 然后不兼容这些东东的西西就因为马太效应没人用。 但这不就是编程语言吗? 你弄一个标准委员会,feature们成立一个经济互助委员会,不在里面的feature不被采纳没人用,别人直接打开github修改rustc源代码,不也一样是加feature? 编程语言难的不是一个特性怎么怎么实现,而是你有多个特性的时候,各个特性之间会如何互相影响。用宏来实现feature,只是在‘同谐’的命途上给自己使绊子罢了。 via 知乎热榜 (author: 圆角骑士魔理沙)
在Telegram中查看相关推荐

🔍 发送关键词来寻找群组、频道或视频。
启动SOSO机器人