2

论编程语言(0)

 3 years ago
source link: https://blog.csdn.net/innost/article/details/107650194
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
论编程语言(0)_Innost的专栏-CSDN博客

自从我写完《深入理解Android Java虚拟机ART》一书后,我意识到自己(和我所认识的程序员们)在计算机语言基础上的极大的欠缺。作为语言的使用者,我们无疑并不落后,甚至在某些场景下还是引领者。比如,在Android世界里,曾经有很长一段时间所谓高级开发者的标配就是得会玩Java语言反射、热修复。但比较可惜的是,这些东西其实还只是在语言本身提供的机制上做一些一般人较少用到的操作而已。

当然,在我的ART一书的审稿专家及高级读者朋友们中,有一些人已经可以大胆得对dart虚拟机进行修改了(虽然我对他们的目标——比如dart也要魔改成支持热修复这点并不认同,但技术上能走出这一步我觉得已经很不容易了)。Anyway,我最近1年多来一直在琢磨这样一个问题——要搞一门编程语言,是不是存在一些固定的套路?而我们,甚至非西方人能不能在这个套路内搞出一门编程语言?

目前看,非西方人里貌似只有岛国的松本行弘搞出了Ruby这门可入史册的计算机编程语言。我试图在他的新著中找到可能的蛛丝马迹,但感觉什么也没找到。一方面,松本行弘对编程语言的热爱是可以十年为单位来计算的,所以他有很长,很多在语言层面上的知识积累,毕竟罗马不是一日建成的。另外一方面,也有可能是我自己的知识储备不够...

关注我公众号的朋友可能知道,我曾经试图以quickjs为突破口(小而精之QuickJS JavaScript引擎及周边研究(I))来彻底突破JavaScript。我为之奋斗了大概6个多月,中间曾经一度放弃,阅读了至少十本书籍——包括英文原版、中文高深书籍(看得我一度绝望的)等,但依然没有找到突破口。我也明白其中的原因——简单来说,就是投入不够。Javascript已经二十五年了。走到今天,多少公司、人在上面耕耘过啊。而我,对它来说还只是胚胎吧,离开花结果还早着呢...

正如我在ART一书第一章里最后的部分所说的——”如果说ART虚拟机是一个坚固的城堡的话,本书相当于在这个城堡上为读者们打开了好几个关键突破口。希望读者在此基础上继续研究ART虚拟机中其它有意思,有价值的领域“。这次,我打算也吹起一波嘹亮的冲锋号,向编程语言的基础知识发起冲击。

这是一个中老年秃头知识分子的历史责任感吗?我觉得或许有那么一丢丢吧——我不入地狱谁入地狱?希望更多人看到这篇文章,希望更多人重视这个东西。作为对比,我所选择的几本参考书籍,他们的作者都是几十年如一日在这个领域耕耘——相形见愧啊.....

最后的最后

  • 我期望的结果不是朋友们从我的书、文章、博客后学会了什么知识,干成了什么,而应该是说,神农,我可是踩在你的肩膀上的喔。

  • 关于学习方面的问题,我已经讨论完了。后面这个公众号将对一些基础的技术,新技术做一些学习和分享。也欢迎你的投稿。不过,正如我在公众号“联系方式”里说的那样——郑渊洁在童话大王《智齿》里有一句话令我印象深刻,大意是“我有权保持沉默,但你说的每一句话都可能成为我灵感的源泉”。所以,影响不是单向的,很可能我从你那学到的东西更多。

format,png

神农和朋友们的杂文集

长按识别二维码关注我们


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK