文档章节

编程语言与我们思考的方式

ljzn
 ljzn
发布于 2016/09/17 21:46
字数 284
阅读 46
收藏 0

看了Dave Thomas 在2014年的一场演讲,收获颇丰。在这里简单概括一下。

我们都习惯了懒惰

我们习惯了用高级语言来编写程序,因为不用过多考虑性能。但随着摩尔定律逐渐失效,我们需要重新重视程序的性能。
未来属于函数式。
未来属于并发。

语言能表述世界

维特根斯坦说过: 语言的界限就是世界的界限。

语言是我们看世界的方式

沃尔夫假说:语言影响着我们对世界的理解。难以名状的事物难以理解。

斯特如普效应

输入图片说明

当颜色和字不匹配时,你会很难说出字的颜色。

变形的方式

Elixir中的管道操作符 |> 使得我们阅读的顺序和数据变形的顺序相同,大大提高了可读性。

状态机

模式匹配可以用于函数的所有参数,所以我们可以用类似状态机的形式来写函数。解析和解耦都很方便。

© 著作权归作者所有

ljzn
粉丝 30
博文 69
码字总数 96245
作品 0
南平
程序员
私信 提问
对函数式编程的误解

最近,我偶然看到了这样一篇文章:实用的纯函数式编程,里面谈到了函数式编程的优势。然而,作者的某些对函数式编程的思想认识却让我诧异: “长期的处在命令式编程的环境世界里会让我们养成...

oschina
2012/09/21
3.3K
33
为什么函数式编程很重要:不一样的白板图

为什么我们要学习函数式编程?为获得更好的软件设计技术! 一天,我们设计了一个流程,来校对款项的收支平衡。下面这张图就是我们在几年前设计出的结果: 那以后我们开始学习函数式编程。函数...

oschina
2012/07/18
4.1K
27
没学过 C 语言的代价

本文作者 Ozan Onay 为 Bradfield 计算机科学学院教师 C 语言确实显得有些老旧。最近一版权威性的 C 语言还是 1988年 发布的;在接近 30 年的时间里,这个语言的作者一直都没有对它进行过更新...

局长
2016/11/14
18K
67
把编程作为一种思考方式

编程已经改变了。在像FORTRAN和C这样的第一代语言中,程序员的编程压力是将高级概念转换为代码。在现代编程语言中 - 我将使用Python作为示例 - 我们使用函数,对象,模块和库来扩展语言,这不...

ismdeep
2018/10/09
2.2K
3
新手如何学习C语言/C++,我用一年时间是怎么自学的

最近会有一些初中高中大学的同学问,C语言C++不会不知道怎么学习不会写代码怎么办?大致上都是一些类似的问题吧,回想一下自己走过的路,反复的了很久思考然后写了这篇文章,希望可以对一些迷...

小辰GG
2017/12/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

爬虫可以采集哪些数据?爬虫借用什么代理可以提高效率

学习爬虫的门槛非常低,特别是通过Python学习爬虫,即使是网上也能找到许多学习爬虫的方法,而且爬虫在数据采集方面效果比较好,比如可以采集几万、上百万网页数据进行分析,带来极有价值的数...

xiaotaomi
24分钟前
4
0
redis自建笔记

自建redis笔记 最近在linux安装了一下redis,特做一些笔记! 本文先单节点启动redis,然后再进行持久化配置,在次基础上,再分享搭建主从模式的配置以及Sentinel 哨兵模式及集群的搭建 单节点...

北极之北
25分钟前
4
0
没想到Spring Boot居然这么耗内存,有点惊讶

Spring Boot总体来说,搭建还是比较容易的,特别是Spring Cloud全家桶,简称亲民微服务,但在发展趋势中,容器化技术已经成熟,面对巨耗内存的Spring Boot,小公司表示用不起。如今,很多刚诞...

程序员修BUG
29分钟前
4
0
Spring Security 实战干货:Spring Boot 中的 Spring Security 自动配置初探

1. 前言 我们在前几篇对 Spring Security 的用户信息管理机制,密码机制进行了探讨。我们发现 Spring Security Starter相关的 Servlet 自动配置都在spring-boot-autoconfigure-2.1.9.RELEASE...

码农小胖哥
31分钟前
4
0
Docker 容器时区时间不一致 问题解决

解决方案: 1,最傻瓜也最方便的处理方式,运行新的容器前设置本机时区和时间文件与容器的映射 docker run -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime ...1 -v /etc/...

突突突酱
32分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部