随笔分类 -  函数式编程

摘要:今天在随便看一些文章及思考的时候,突然就悟到了,这种感觉就象当年某一天领悟了面向对象。哈哈,我终于打通了任督二脉.顺便看下,园龄刚好10年了。当年理解面向对象后随手写了这篇:http://www.cnblogs.com/DSharp/archive/2005/01/28/98632.html面向对象... 阅读全文
posted @ 2014-06-15 15:50 人工智能-群513704292 阅读(3305) 评论(5) 推荐(0) 编辑
摘要:Brainfuck是一种极小化的计算机语言,它是由Urban Müller在1993年创建的.Müller的目标是建立一种简单的、可以用最小的编译器来实现的、符合图灵完全思想的编程语言。这种语言由八种状态构成,为Amiga机器编写的编译器(第二版)只有240个字节大小!就象它的名字所暗示的,brai... 阅读全文
posted @ 2013-05-22 21:46 人工智能-群513704292 阅读(855) 评论(0) 推荐(0) 编辑
摘要:函数式编程的学习,这件事真是干的太对了,用在技术上,怎么说都不过分,从开始学习到现在近不到2月,头一个月感觉没太多收获,很多思想没有融会贯通.最近各个知识碎片开始产生化学反应.在大脑里开始形成各种概念. 首先来看看初步成果之一:1.对对象的底层实现原理进一步理解.其实就是些函数和数据的组合而已... 阅读全文
posted @ 2013-05-21 16:14 人工智能-群513704292 阅读(410) 评论(1) 推荐(0) 编辑
摘要:第一阶段总结: 从启动学习函数式编程到现在近一个月了.有了一些小收获,但是发现了一个非常严重的问题.这个非常严重的问题就是:我们学习的速度惊人的慢!!! 以前也曾经粗浅思考过这个问题.但没有深入,直到今天广泛阅读大量技术文章后,才惊觉吸收到的东西却是如此之少.对广泛搜索阅读,有如下体会:1.知道... 阅读全文
posted @ 2013-05-08 01:07 人工智能-群513704292 阅读(224) 评论(0) 推荐(0) 编辑
摘要:Prolog(Programming in Logic的缩写)是一种逻辑编程语言。声明式编程的另一端,逻辑编程,其实逻辑编程Prolog很特别,可以理解成就是逻辑运算,所有结果,不是True就是FalsePROLOG语言的程序结构非常简单,由三部分组成,即事实、规则和询问1.事实事实用来说明有关客体... 阅读全文
posted @ 2013-05-02 18:18 人工智能-群513704292 阅读(460) 评论(0) 推荐(2) 编辑
摘要:编程模式很难去表达这个东西,但也没有办法下定义,我们来看下:SQL:Structured Query LanguageSQL 是高级的非过程化编程语言,它允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解其具体的数据存放方式。而它的界面,能使具有底层结构完全不同的数据库... 阅读全文
posted @ 2013-05-02 12:16 人工智能-群513704292 阅读(337) 评论(0) 推荐(0) 编辑
摘要:一些应用:逆向调用:一般模式里有IOC,控制反转,但这个其实是可以泛化的,未必局限于面象对象,高阶函数也一样,然后就是C#的扩展方法.用语言我们可以这样表达:我->吃饭 逆向后:吃饭了(我),可以看出,他们能完成相同功能,这个东西炸看没什么特别的地方,实际上非常厉害.在编程中,前置和后置关系,通过逆... 阅读全文
posted @ 2013-04-26 23:46 人工智能-群513704292 阅读(269) 评论(0) 推荐(0) 编辑
摘要:理解: 经过仔细的思考和思维梳理,今天小有所得。试着把想法整理出来。静态和动态,声明和具体,规则和使用等等,它们就是易经的乾坤,阴阳,万物上升到哲学上,殊归同途。在面向对象世界里,表面上我们抽象了,实际上还是在"具体"的思维世界打转转.这是一个类,那是另一个类.然后我们去定义它们的特性,方法.当定... 阅读全文
posted @ 2013-04-26 23:05 人工智能-群513704292 阅读(278) 评论(0) 推荐(0) 编辑
摘要:针对函数式编程的两大粘性演练:高阶函数: public class MapClass : IWrite { public static IEnumerable Map(IEnumerable list, Func func) { fore... 阅读全文
posted @ 2013-04-24 22:39 人工智能-群513704292 阅读(256) 评论(1) 推荐(0) 编辑
摘要:函数式程序设计为什么至关重要?模块化软件越来越庞大,越来越复杂,要解决复杂问题,必然会产生大量代码。系统很容易就膨胀到人力无法控制的局面。我们看看这些范型怎么解决这个问题:结构化模式:模块化,层次分解。把大块分成小块,再分成小小块,直到人力能轻松处理为止。面向对象:组件化,把东西设计成小个小个的独立... 阅读全文
posted @ 2013-04-24 21:29 人工智能-群513704292 阅读(463) 评论(0) 推荐(0) 编辑
摘要:找到点干货:PROFESSIONALFUNCTIONAL PROGRAMMING IN C#看了下目录,正是我想要的,同时也发现,函数式编程果然博大精深,看目录,就有第一次看编程语言或是面向对象的感觉,里面的章节,基本上没有一个概念是熟悉的.先从中文目录起把概念列出来:惰性列表:迭代器闭包表达式树局... 阅读全文
posted @ 2013-04-19 22:44 人工智能-群513704292 阅读(414) 评论(2) 推荐(0) 编辑
摘要:荆棘:刚开个头,身体就出点小毛病,这充分说明,这玩意必须吃透不可,遇到困难就放弃,那么以后可能也没办法再提高了.零零碎碎查不少资料,泛泛看了些东西,先记下来.首先,传统C#是没有闭包的.但有了匿名函数和Lambda后,就有了这个东东.public class TCloser{ public... 阅读全文
posted @ 2013-04-18 23:27 人工智能-群513704292 阅读(470) 评论(0) 推荐(0) 编辑
摘要:知识点理解一:函数:函数(function)表示每个输入值对应唯一输出值的一种对应关系。函数f中对应输入值的输出值x的标准符号为f(x)。包含某个函数所有的输入值的集合被称作这个函数的定义域,包含所有的输出值的集合被称作值域。若先定义映射的概念,可以简单定义函数为,定义在非空数集之间的映射称为函数。... 阅读全文
posted @ 2013-04-14 23:03 人工智能-群513704292 阅读(574) 评论(0) 推荐(0) 编辑
摘要:入门:函数式编程之艰难,在于这玩意更接近数学,就是数学之"用",大牛们在云端,玩纯数学去了,弄出一堆公式及概念,码农们爬在地上,辛苦耕耘,要的是看得见摸得着的,函数式编程就是要打通两者的桥梁,把数学家弄出来的公式概念,用于耕耘,这是现代化农业,告别刀耕火种,是门实实在在的实践科学.这两天看了不少概念... 阅读全文
posted @ 2013-04-14 14:19 人工智能-群513704292 阅读(1020) 评论(0) 推荐(0) 编辑
摘要:为什么要学习函数式编程?不啰嗦了,因为,所以,就学.实际上,现在主流编程里都有它,比如最基础的lamdba,C#有,Python有,JAVA最近也要引入这玩意,不学函数式编程,那么以后代码里的有lamdba的部分就搞不定,那么码农的身份地位可能要降级成码畜了.这是不可以接受的现实!!!那么,什么是函... 阅读全文
posted @ 2013-04-11 23:27 人工智能-群513704292 阅读(868) 评论(0) 推荐(0) 编辑
摘要:起点:作为一个比较资深的码农,写程序是有些年头了.最早用过C,VB,Delphi等写过不少过程式代码.后来,04,05年左右吧,为了提升技术,仔细思考学习了面向对象,终于有一天开悟,基本上算是进入了面向对象的大门.回头想下当时情景还是印象深刻,就象脑子里照进一束光.(当然这之前也看了各种对象,模式及... 阅读全文
posted @ 2013-04-11 21:34 人工智能-群513704292 阅读(536) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示