4~5月的一些日常

4/23:

阅读了coolshell.cn关于协程的文章,明白了C语言的switch(){case:}的另类用法,已经__LINE__,__DATE__等一些宏定义。以及对于python的field的用法,即为返回一个generator。由于文章还未读懂,明天要继续阅读。


4/24:

sicp中的嵌套映射以及写了生成(1~n)的质数映射三元组。和课后2习题,但是是在上课时写的。最后晚上的时候阅读了coolshell中关于元驱动的文章但是没搞懂啊,以及阮一峰关于函数尾调用&&尾递归的原理。


4/26-28

调整linux客户端的同步恢复代码,并学习了sicp,已经进行到了100页,由于个人懒惰问题忘记了编写日常

4/29

函数式编程的几个特性(coolshell):immutable data 不可变数据:像Clojure一样,默认上变量是不可变的,如果你要改变变量,你需要把变量copy出去修改。这样一来,可以让你的程序少很多Bug。因为,程序中的状态不好维护,在并发的时候更不好维护。(你可以试想一下如果你的程序有个复杂的状态,当以后别人改你代码的时候,是很容易出bug的,在并行中这样的问题就更多了)

first class functions:这个技术可以让你的函数就像变量一样来使用。也就是说,你的函数可以像变量一样被创建,修改,并当成变量一样传递,返回或是在函数中嵌套函数。

尾递归优化:我们知道递归的害处,那就是如果递归很深的话,stack受不了,并会导致性能大幅度下降。所以,我们使用尾递归优化技术——每次递归时都会重用stack,这样一来能够提升性能,当然,这需要语言或编译器的支持。Python就不支持。

还有函数式的一些好处:

parallelization 并行:所谓并行的意思就是在并行环境下,各个线程之间不需要同步或互斥。

lazy evaluation 惰性求值

determinism 确定性

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 当我们说起函数式编程来说,我们会看到如下函数式编程的长相: 函数式编程的三大特性: immutable data ...
    木易林1阅读 1,837评论 0 1
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,170评论 25 709
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,576评论 11 349
  • 夜深了,我陪着娘娘,犹如娘娘陪着小时的我。姑妈说,妈没了,家就没了。对我来说,娘娘在,我的童年就在,绍兴儿...
    小钫阅读 4,631评论 0 1
  • 600232 9.67买入 x1034股次日 10卖出 +341
    _Angelia_阅读 1,567评论 0 1

友情链接更多精彩内容