由《函数式编程另类指南》联想到的哲学思想

简介:

这是当年我看Lamada表达式相关文章时看到的资料,以及当时的感悟,现在给转到这边来自己看

 

《函数式编程另类指南》:http://groups.google.co.uk/group/mimiqiao/browse_thread/thread/56c381a3aca1bbb4/cd66e3520762a827?hl=en 

 

这是一篇非常优秀的文章,它不仅向我揭示了一个全新的编程世界,还将我的思想引到了对世界本源的思考中去...

 

参考文章内容,试想如果采用Continuations技术的函数式编程,一切的状态存储都变得无比的简单,你只需要保存指定时间的函数返回值及其下一个调用位置,就可以完美的保存程序的当前状态,即使使用多CPU并行运算,也仅仅是按照CPU的数量,多几份数据而已。

 

这样的话再大型的游戏,执行保存进度也仅仅是几微秒的事;大型软件在崩溃时也可以完美实现恢复;就算网络游戏及日后可能出现的大型网络应用程序所需保存状态的数据也并不会有增多...

 

后来看了作者最后的注释3,忽然明白,冯诺依曼的命令式计算机架构与阿隆左丘奇的函数式计算机架构,实际上是反映了对事物因果关系的两种不同的哲学观点:

 

冯诺依曼的观点,是将世界看作一个整体,不同事物之间存在特定联系,一种事物的变化同时会引发其他事物的变化,这种理论比较有代表性的就是蝴蝶效应(蝴蝶扇动翅膀与风暴之间的联系)和哥本哈根派量子论(事物不是客观实在的,它与观测者存在联系)。这种思想属于唯心主义。

 

而阿隆左丘奇的观点则是将事物的变化归结于此前对之有影响的事物,不同事物间的变化或有交错,但是更多时候是在彼此独立的并行运作,这种理论的代表是牛顿的经典物理学,这种思想认为只要了解了世界运作的公式以及世界在某一时刻的状态,就可以向后计算出世界的历史,也可向前推算出世界的未来。这种思想属于唯物主义。

 

两大计算机模式的背后或许还是波与微粒的战争、经典物理与量子论的战争、唯物与唯心的战争...

 

或许世界的真理就是存在于相反的两极,两极都是真理又都是谬误,两极既互斥又依存,所以地分两极、人分男女、计算机始终在处理着0和1——这最简单的数字却是未来揭开世界真理的最强大力量...


本文转自斯克迪亚博客园博客,原文链接:http://www.cnblogs.com/SkyD/archive/2008/09/02/1282192.html,如需转载请自行联系原作者

相关文章
|
7月前
|
存储 Python
揭秘python函数:编程艺术的核心力量(2)
揭秘python函数:编程艺术的核心力量(2)
|
7月前
|
小程序 开发者 Python
揭秘python函数:编程艺术的核心力量
揭秘python函数:编程艺术的核心力量
|
4月前
|
Java 程序员
让我们一起探讨Java多态的奥秘,看看它是如何打破“一刀切”的局限,让我们的代码更加生动多彩
让我们一起探讨Java多态的奥秘,看看它是如何打破“一刀切”的局限,让我们的代码更加生动多彩
43 5
|
4月前
|
C++
拥抱C++面向对象编程,解锁软件开发新境界!从混乱到有序,你的代码也能成为高效能战士!
【8月更文挑战第22天】C++凭借其强大的面向对象编程(OOP)能力,在构建复杂软件系统时不可或缺。OOP通过封装数据和操作这些数据的方法于对象中,提升了代码的模块化、重用性和可扩展性。非OOP方式(过程化编程)下,数据与处理逻辑分离,导致维护困难。而OOP将学生信息及其操作整合到`Student`类中,增强代码的可读性和可维护性。通过示例对比,可以看出OOP使C++代码结构更清晰,特别是在大型项目中,能有效提高开发效率和软件质量。
37 1
|
7月前
|
设计模式 算法 开发者
代码之美:探索编程艺术与实践的交汇点
【4月更文挑战第2天】 在数字世界的构建中,代码不仅仅是一种工具,它亦是艺术家手中的画笔。本文旨在探讨编程作为一种技术和艺术相结合的领域,揭示那些隐藏在代码背后的美学原则和创造力。我们将从编程的基础出发,逐步深入到设计模式、算法优雅性以及代码的可读性和维护性,最终探讨如何通过技术实现创新并解决问题。文章的目的是为那些渴望在技术实践中寻找创造性和美感的开发者提供灵感和指导。
|
存储 C++
魔幻而精妙:探秘杨辉三角的奥秘
在这篇文章中,我们将深入研究题目 杨辉三角的内涵与解决方法。杨辉三角是数学领域的一颗璀璨明珠,通过对该问题的解析,笔者将揭示它独特的规律与生成方式。
127 0
|
7月前
|
Python
揭秘python函数:编程艺术的核心力量(3)
揭秘python函数:编程艺术的核心力量(3)
|
缓存 前端开发 JavaScript
🫧🫧🫧ServiceWorkerGlobalScope 让你重新认识 ServiceWorker
ServiceWorkerGlobalScope和上两章的概念基本相同,都是继承自WorkerGlobalScope,但是ServiceWorkerGlobalScope 是在ServiceWorke
148 0
|
存储 编译器 Linux
C生万物 | 窥探数组设计的种种陷阱
数组在设计的时候为何会出现那么多纰漏?数组越界是如何导致的?,我们来一探究竟🔍
69 0
C生万物 | 窥探数组设计的种种陷阱

相关实验场景

更多