我觉得我的评论有些问题了。我曾在gigix的blog中说:感觉没什么东西非用functional的语言不可的,以前也了解过lisp和haskell,感觉没有什么出奇伟大的事情。语法上的便利很容易被大家的不熟悉抵消掉。
这显然是废话。其实计算机能做的事情完全是受限于其硬件,有什么传感器,有什么存储器,有什么CPU。你用机器语言,用汇编,用什么写都不能写处超出硬件所支持的(直接和间接的)功能来。所以我失望啊,我居然做了一句如此废话的评论
But,那么要各种语言来干什么?我觉得一个是为了更快,一个是为了更强。更快当然不是为了让CPU更快,程序的速度的上限是受到问题本身和CPU速度限制的,而这个上限虽然在大多数情况下并无法计算,但是它确实存在。我们为了更快,是为了能够更快的写出解决问题的软件。无论人们争论用计算机是来干什么,但是解决问题,做事实是肯定是正确的目标。所以,各种语言的出现都是为了能让程序员更快的解决问题。
更强是让程序员能处理更大规模的问题。管理复杂度是程序员主要的工作,也是软件实现主要要解决的问题。程序语言很大程度上就是让程序员能管理更大规模问题的复杂度。
如果这两个目标(更快更强)得到承认,那么我们就能看破一切语言之间的宗教纷争。只要能让程序更快的写出东西,写出更强的东西的,那就是好的。其他的花花草草都是不好的。虽然这样说得有些绝对,但是绝对的不是在于尺子。绝对的在于人们如何用尺子去比量东西,很多时候我们是用过度绝对的眼光去做比较,比如n年前,我们说元模型是一种浪费,怎么怎么的。这个就是我们没有看到趋势,看到未来的发展。但是尺子还是对的,它现在确实是能够符合尺子的规范,只是我们当年(假设哈,)用尺子去比较的时候出了问题。
至少目前我还是觉得我心目中的尺子(更快更强)是没有什么问题的。大家或许还能提出包含更多内容的尺子,或许我说的太偏激了。不过没关系,请朋友们指出来,正好学习学习。
随笔档案 (211)
- 2015年11月(2)
- 2015年10月(3)
- 2013年9月(1)
- 2012年10月(1)
- 2012年8月(1)
- 2012年3月(2)
- 2012年2月(5)
- 2010年3月(4)
- 2010年2月(2)
- 2009年7月(1)
- 2008年11月(8)
- 2008年10月(3)
- 2007年10月(2)
- 2007年4月(3)
- 2005年11月(1)
- 2005年5月(1)
- 2005年4月(1)
- 2005年3月(7)
- 2005年2月(6)
- 2005年1月(13)
- 2004年12月(3)
- 2004年11月(9)
- 2004年10月(31)
- 2004年9月(13)
- 2004年8月(18)
- 2004年7月(20)
- 2004年6月(27)
- 2004年5月(23)
- 更多
最新评论
- 1. Re:在2003上实现Custom Task Pane
虽然 office 开发很复杂,有的地方限制也很多,但这样 hack 它,针对问题寻找一些变态的解决方法,也是很有意思的一个过程。
- --yanpengl
- 2. Re:Python完全新手教程
- 应该是tuple, 不是turple!烦请了解!
- --linuxdog
- 3. Re:Win32Asm教程
- 请问博主这篇文章有原文链接吗?
- --lulipro
- 4. Re:Python完全新手教程
- 很好的教程,赞
Python 入门指南: - --饭得西
- 5. Re:我的GIT工作流程
- 非常感谢
- --那么遥远
- 6. Re:Python完全新手教程
- @ winnieying引用非常谢谢博主这么精彩的讲解!请问博主,在学习新手教程之后,对于如何进一步深入学习掌握Python,你有什么建议?我是一个测试小白~想学一点高端一点的测试技能,基于Pytho...
- --Runner~
- 7. Re:Python完全新手教程
- 字元组和列表,除了成员不能转向, 其他都一样!
- --linuxdog
- 8. Re:Local Optimization Revisited
- 有两行代码写就好了
- --黑猫警长v
- 9. Re:We are doomed, and RPC does not help
- 一脸懵逼的走了~
- --黑猫警长v
- 10. Re:We are doomed, and RPC does not help
- 前面写的非常有意思,后面是不是打字太累烂尾了。。。。
- --DoPeter
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架