晚上在风月群跟燕大师聊天. 大师说.聊聊未来各自的方向. 说到未来. 我说 未来可能会看<--深入理解计算机体系. 编译原理. sicp Functional programming tcp/ip-->然后就又被我扯到了fp(functional programming)上.. 说到这 .我还是狠狠的站出来跳个大神吧..
无疑未来是多核.并行的.
引用
Saito﹏<saito.javaeye@gmail.com> 23:02:52
我有个大胆的预测.. 未来 3~5年以内.. Java会持续萎缩.. 然后 jvm 群魔乱舞. 但是有一个将领. 那就是 Scala . .然后在处理 http请求上. 会有函数式语言冒出来. 毋庸置疑. 肯定是 Erlang . 仅限于互联网行业.. 像什么外包的crm 工作流什么的. 我不保证. 安安心心oo吧..
引用
回复暂时的常量(729381297) 23:06:25
看结果没意思
引用摘自 晚上 跟大师聊天. 拍脑袋想出来的. .大师觉得只有结果没意思..
说说我自己的理解. 关于未来的web领域. 开发上无疑是往更"敏捷"方向发展. 快速开发成为一个标配..笨重的Java正在被web领域逐渐抛弃. 而web领域在做大了之后都会面临一个问题.服务器支撑不了这么多pv .这么多人跑上来服务器就要挂掉. twitter面临到了.Javaeye也面临到了.越来越多的公司都面临这个问题..所以肯定要想办法去解决. Twitter是用scala . 一些公司选择了Erlang .为什么 .. 其实FP功不可没..
命令式编程的祖宗是图灵机. 图灵机是什么. 就想象成一个机器. 然后一个无限长的纸帯穿过机器.就行了. 图灵机所依赖的状态的判定以其达到正确的执行结果.而函数试语言的鼻祖lambda演算并不是一个具体的有一个实物可以想象的..但是后来 邱奇跟图灵还是发现其实他们做的是一个东西..这两个东西实际上是等价的..能力上等价证明了函数式编程能做出来的命令式语言也能做出来. 因为他们等价. 但是 . 实际上他们在哲学上是有差别的..
未来是 面向多核的. 面向并发的. pure的函数式语言天生的没有"副作用"..导致他在开发的时候没有命令式语言大量的状态保存.在函数式编程的世界里. 只要我写定一个function .那这个function不管我传多少次相同的值进去.我所得到结果都是一样的.换句话说. 命令式语言实际上依靠的就是状态的变更来让程序达到想要的结果...本来纯的函数式语言里面根本就没有变量这一个概念..函数式语言的起源是lambda演算. lambda演算是什么. 就是 一个函数定义式跟一条变换规则. 所以最早的那批语言里面 像scheme 连for循环都没有.因为用递归就可以实现. 这也从侧面说明了为什么尾递归优化对于函数式语言至关重要.对于状态的变更其实函数式语言也是支持的..在不纯的函数式语言其实也可以 set!. 而纯的里面要想达到状态的变更. 一般有两个方法. 一个是通过递归(对还是递归).将返回值再作为参数传递. 而另一种就是利用Monad. 用T1大大的解释.要理解monad. 先把近世代数的群论 跟 范畴论 搞清楚. 对我这个数学专业的孩子来说. T1大大的文章也只是勉强读懂.. 暂时将 monad 归为引入副作用. 和保持函数式语言的纯洁性. 其他暂且不表.当然. 函数式编程也还是有缺点的. 那就是学习门槛有点高.以及程序本身可读性的质疑(但实际上我觉得这个不是问题.) 但带来的是什么?并发的良好支持..(完全可以甩开命令式语言几条街..命令式语言在并发上那么困难.究其根本还是"副作用"的关系.程序之间为了state. 不得不增加锁机制..来保证状态的变更顺序等等..).程序鲁棒性的提升. 伸缩性的良好提升.
Erlang(ps: 跟我念 /air-lang/)采用的并发模型. 轻量级进程 各进程独享自己的内存空间. 通过消息传递的方式的 这种模型. 再加上Erlang本身成熟的OTP库.太合适了大型互联网公司了.. 你用命令式语言在里面搞并发.lock过来lock过去的.一会就把自己lock住了..想死的心都有了. ..也为难那么多大佬们写了那么多命令式语言多线程开发的书.. 而scala(ps: 跟我念 /sgale/ 如果你跟上面的Erlang都念错了的话. 那恭喜你. 跟我一个水平了.)由于是oo+fp的..采用了actor模型后在twitter上大放异彩. 说实话.我现在不肯定 oo + fp的方式会怎么样. 但是如果不做规范的话. 将来可能会在开发上有麻烦. 而ruby .说白了. 我暂时把他当作是Java的一种"敏捷"替代. 他提高了我们效率.让我们快乐编程. 但在思想上. 并没有跳出编程所谓的固定思维.
最近. 越来越多的发现. 冒出来的命令式语言其实都参杂了很多的fp的东西. 从简单的闭包.到lambda表达式. 未来是混合编程的时代.是多核.并发的时代. 到底是糅合oo和fp的类scala的时代 . 还是oo 与 fp 继续分开的混合编程时代. 都值得我们期待. 无疑. fp会在未来占据越来越重要的位置. .
分享到:
相关推荐
根据给定的信息,我们可以了解到“俄罗斯大神系统集合”是一个由用户jumeo7整理的文档,主要介绍了俄罗斯系统精简大师Lopatkin所创建的一系列精简版Windows操作系统。下面将详细介绍其中的关键知识点: ### 1. ...
此贴分享XDA大神破解高级功能,所有特效,全部免费使用,欢迎各位机友下载。 巧影作为一款全功能的专业视频编辑软件,能为用户提供多图层功能,即用户可以在原视频上任意地叠加视频、图片、文字、贴纸、手写等。...
标题中的“IDM 6.38.15 俄罗斯大神无限制版”指的是Internet Download Manager(IDM)的特定版本,这是一个流行的下载管理器软件,由俄罗斯开发者进行了优化和修改,以去除官方版本可能存在的下载速度限制或试用期...
天涯kknade大神房产说第2部.docx
DM (Integrated Data Multiplexer)综合数据复用器是一种数据复用设备,它可以将多路RS232、RS485及数字语音等多种数据复用到E1传输通道或光传输通道内,实现不同类型数据在同一通道内的复用、传输。
XDA大神发布安卓最新版,无需付费,所有功能,全部免费用XDA大神发布安卓最新版,无需付费,所有功能,全部免费用
网上找的大神的” 暗示这是一个关于BPMN(Business Process Model and Notation)的代码资源,可能是某个开发者从网络上收集的,用于学习或参考。 【描述】:“bomn的代码.网上找的大神的bomn的代码.” 这句话是对...
标题中的“大神码字及注册机”表明我们讨论的是一个专为网络小说作者设计的码字软件,可能包括其源代码以及一个注册机。这个软件的主要目标是帮助作者高效、安全地创作文字,尤其在网络小说领域。让我们深入探讨一下...
java小游戏项目(求大神找bug).zipjava小游戏项目(求大神找bug).zip java小游戏项目(求大神找bug).zipjava小游戏项目(求大神找bug).zip java小游戏项目(求大神找bug).zipjava小游戏项目(求大神找bug).zip...
天涯kknade大神房产说第3部.docx
【酷派大神F2全网通版8675-A第三方中文recovery.rar】这个压缩包文件主要涉及的是安卓智能手机的系统恢复工具,特别针对酷派大神F2全网通版8675-A这款手机。在Android操作系统中,Recovery模式是一个特殊的系统状态...
此外,了解如何合理利用模板也是提升PPT制作技巧的关键。这包括理解模板的色彩方案、字体选择、版面设计等,以便在修改时保持整体风格的一致性。同时,合理地添加图表、图像和动画可以增强信息的传达效果,但要注意...
redis4.x windows 版本 国外大神移植的 目前 windows 最新版 redis4.x windows 版本 国外大神移植的 目前 windows 最新版 redis4.x windows 版本 国外大神移植的 目前 windows 最新版
刷机包大神F2(8675-A全网通)刷机工具包是一个专为大神F2手机型号(8675-A版本)设计的系统更新和恢复工具。这个压缩包包含了用户进行刷机操作所需的所有必要文件,旨在改善手机性能、增加新功能或者修复已知问题。...
大神p图.apk
《大神码字软件深度解析》 大神码字软件是一款专为作家和编剧设计的高效创作工具,它以其独特的强制码字功能和丰富的资源库,帮助创作者们提高写作效率,激发创作灵感。这款软件的核心特点在于其多文档编辑能力和...
【标题】"安卓软件大神P图 v6.4.9.2-CN.rar" 提供的是一个针对Android平台的图像处理应用——大神P图的更新版本,版本号为6.4.9.2,特别为中国用户(CN)优化。 【描述】"安卓软件大神P图 v6.4.9.2-CN" 简短地概述...
我们为E弦理论引入一种新的IIB 5膜类型描述,这是有关M5膜的世界量理论,探讨了世界M9膜的终结。 在新的实现中,E字串被描述为带有循环结构的螺旋5字网,这对于提升至六个尺寸至关重要。 利用拓扑顶点到5臂网状配置...
【BOBO大神的主策养成之路】 在游戏行业中,主策是一个至关重要的角色,他们负责游戏的整体设计、规划和管理。"BOBO大神的主策养成之路"是一部深入探讨这一职业发展路径的资源,旨在帮助有志于成为游戏主策的人士...