【赠书活动】同构:编程中的数学

写在前面

近年来随着人工智能、大规模分布式计算、多核CPU和异构计算等的发展,计算机中的各种编程技术在编程语言、软件架构、编译器、硬件体系结构、集成电路设计等方面都有着剧烈的变化。编程语言方面,越来越多的主流语言引入函数式编程的概念。软件架构方面则有了更多并行计算的东西、各种分布式并发的模型,以充分利用多核CPU。编译器方面则有了更多领域应用方面的发展,比如MLIR、TVM等,充分利用异构计算中的硬件加速单元。硬件体系结构方面则随着各种硬件加速单元的兴起,改变了原来以CPU为计算中心的格局,计算更多地依赖各种硬件加速单元。集成电路设计方面则为了实现各种硬件加速单元,需要缩短电路设计的周期,以更快速地应对各种频繁变化的需求,近年来有不少公司使用Bluespec、Chisel、SpinalHDL等具有函数式特性的语言来设计集成电路。
作为程序员,如何应对这些变化呢?如果每出现一种新的技术都去学习,那将会让我们疲于奔命,会有学不动的感觉——需要学习的东西太多了。但实际上这些新技术的基础变化并不大,有些甚至是在原有基础上的重新组合。所以,我们应该更多地学习基础的技术,提升抽象思维能力,善于发现各种不同技术的本质、不同技术之间的相似关系(更好的是同构关系)。这样我们就能够以不变应万变,对各种技术融会贯通,以较小的代价掌握新的技术。

在这里插入图片描述

同构:编程中的数学
作者:刘新宇
从数字、递归、对称、范畴、融合、无穷、悖论
七个方面介绍了计算机程序的数学基础和原理

作者在这本书中非常详细、清晰地阐述了与编程相关的一些基本数学概念和抽象方式,并将这些概念在实际的编程中展示出来,使用函数式编程语言在实际编程中展示良好的抽象是如何做的。读者通过阅读本书,将会得到一个全新的编程思维方式、良好的抽象能力,对编程中的数学概念有更清晰的理解(特别是对近年来关注度越来越高的函数式编程的一些基础概念,比如lambda演算、递归、代数数据类型、函子、自然变换等)。本书对后续学习函数式编程语言或者理解主流语言中的函数式特性会非常有帮助。

内容简介

本书从数字、递归、对称、范畴、融合、无穷、悖论七个方面介绍了计算机程序的数学基础和原理,并以“同构”概念为线索揭示出编程本质上是和数学同构的。第1章介绍皮亚诺算术公理系统,通过5条公理,构筑了计算机程序大厦的基石;通过单向链表、斐波那契数列等例子,展示了和自然数同构的计算结构。第2章介绍递归,通过欧几里得算法作为开端,最终把递归的数学原理构建在Lambda演算和Y组合子之上。第3章介绍对称群、环、域等抽象代数结构,解释了伽罗瓦理论这一抽象思维的明珠。第4章介绍范畴论,把列表、异常、多态、类型系统、复合数据结构等众多编程概念构筑在范畴论的基础上。第5章介绍融合律,它是进行算法推导和优化的有力工具。第6章介绍无穷,给出了康托尔的无穷集合论和超限数概念,介绍了编程中流的概念和无穷的关系。第7章以罗素悖论、可计算性和哥德尔不完全性定理结束本书,介绍了计算能力的边界和对编程基础哲学的影响。
本书还在各个章节中介绍相关数学家的人生经历和逸闻趣事,讲解他们如何克服困难、追求真理、创造奇迹,并穿插讲述编程、数学、艺术、音乐之间的有趣联系。

作者简介

刘新宇
亚马逊中国研发中心研发经理,负责分布式仓储物流系统的开发。1999年和2002年在清华大学自动化系分别获得学士和硕士学位。长期专注于函数式基础算法,著有《算法新解》一书(2017年出版)。

专家推荐

培根言:“数学是思维的体操。”而编程是一项高度复杂的思维活动。学习数学思想对编程的益处不言而喻。本书作者阅读了大量的数学典籍,以同构视角从中挑选了诸如递归、对称等精妙的数学思想,构思成书呈现给大家,非常难得!这是一本浓缩思想的书,言简意赅,值得我们细细品味。
赵俊民 北京荣耀终端有限公司软件架构师
本书不仅把代数系统中深奥的同构理论讲解得完整透彻,还把数学发展的历史脉络交代得清清楚楚,特别是把数学理论应用到实际生活的方方面面,让我作为一个数学爱好者受益匪浅。此书如今得以出版,能让更多数学爱好者有机会看到,着实令人开心。
李曲 浙江工业大学计算机学院教师
本书以浅显易懂的文字将数理逻辑、抽象代数和函数式编程的知识娓娓道来,这是我读过的最好的范畴论入门书籍,每个计算机相关专业的本科生都应该读一读这本书。
chirsz GitHub读者
初读这本书,感觉是在看大学教材,不过大学教材很少有这么多生动的故事来烘托和关联。细读这本书,才发觉现实开发中的许多任务原来可以做得更有趣也更花哨,就算要玩点把戏也不会被人一眼看穿。觉得本书太复杂也不要紧,不妨先浏览一遍,只要大致了解书中讲了什么就足够,然后常备在案头,需要的时候按图索骥,在数学方面绝对能超越大部分同行了。
余晟 《正则指引》作者

写在最后

参与方式:关注博主,点赞、收藏本博客并进行评论
抽奖方式:
方式一:赠书评论点赞最多的博主!!!
方式二:文末添加博主联系方式:ZICOLBB,进博主交流群
群内不定期送书
截止时间:2023年7月15日

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/20018.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小学数学动画 android,小学数学课堂app下载-小学数学课堂 安卓版v2.2.0-PC6安卓网...

小学数学课堂app是一款小学数学在线教育平台,小学数学课堂app1-6年级数学知识全覆盖,随时随地开始在线练习,小学数学课堂app内有海量题库,生动教学精品课程,了解一下! 软件介绍 小学数学课堂app是上亿小学生…

GeoGebra数学教学网站

GeoGebra 网站是数学教学的好助手, 简称GGB, 可以直接使用网站功能,也可以通过下载软件使用。 网址: https://www.geogebra.org/ 从该网站终于知道了数学的几个主要分支:

信奥中的数学之入门组(面向小学四年级至六年级以及初一学生)

NOI大纲正式发布 NOI大纲正式发布 NOI大纲 CSP初赛篇知识大纲 CSP-入门级-NOI大纲 NOI大纲 CSP初赛篇知识大纲 CSP-入门级-NOI大纲_dllglvzhenfeng的博客-CSDN博客_csp考试大纲 CSP-J入门组的相关的数学推荐国家中小学智慧教育平台 1、国家中小学网络云平台 国家中小学网络云…

(转)春招两次腾讯面试都挂二面了,分享下我失败+傻傻的面试经历

这个春招估计也要介绍了吧,自己投的公司也不多吧,投简历的时候,如果你提前批和正常网申都投的话,可能会获得两次笔试/面试的机会,我投了两次腾讯,不过,两次都在二面挂了,特别是第二次…

面试通过,背调凉了?

一谈起背调,很多朋友的第一反应就是——“好烦哦!” 在某种意义上,背调的确可以检验求职者简历中的内容是否属实,也是企业规避风险的重要手段之一。 每个公司对背调的态度也是各不相同,有的是简单了解基本情况&#…

【面试记录】英威腾一面

公司&岗位 英威腾-软件工程师 面试过程 一对一,腾讯会议。 自我介绍项目介绍项目中最难的地方硕士项目期间收获最大的。如何自学python力扣就业方向深圳能否接受项目追问

面试通过,背调凉了。。

关于背调 大家好,我是二哥呀。昨天在朋友汪哥那里看到一篇文章,说某求职者得能力很强,一面、二面、三面都过了,准备发 offer 了,却被 HR 在背调中发现候选人学历有问题。 背调主要会核实哪些内容呢?大的问…

读破万卷,神交古人,突破ChatGPT4096的Token限制,建立自己的垂直领域资料人工智能助理

ChatGPT的泛用性极高,上知天文,下通地理,参考古今,博稽中外,几乎无所不知,无所不晓。但如果涉及垂直领域的专业知识点,ChatGPT难免也会有语焉不详,闪烁其词的毛病,本次我…

Chat2DB:阿里巴巴开源的聊天数据管理工具--实践

Chat2DB:阿里巴巴开源的聊天数据管理工具–实践 简介 ​ Chat2DB 是一款有开源免费的多数据库客户端工具,支持windows、mac本地安装,也支持服务器端部署,web网页访问。和传统的数据库客户端软件Navicat、DBeaver 相比Chat2DB集成了…

「ChatGPT之母」:她35岁,OpenAI神秘CTO

作者 | 椎名 编辑 | 梓 首图来源:SFGATE 谁是现在风头最劲的AI公司?相信很多人的答案都是OpenAI,尤其是在通用人工智能的(AGI)领域。 然而,很少有人知道,在OpenAI最初踏入AGI之旅时,…

马云回国,首谈ChatGPT:AI将取代大部分标准化的工作!

作者| Mr.K 编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 马云突然回国,并出席云谷座谈会,引起了媒体许多猜想。马云谈了教育、科技等话题。并且在公开场合首次谈到对ChatGPT的看法,马云表示:ChatGPT只是AI时代的…

这家公司用了ChatGPT,逆势扩招40%程序员...

作者| Mr.K 编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 陆奇在最近的分享中提出一个观点:“生成式AI,不会抢程序员的饭碗,相反会增加程序员的岗位。” 理由很简单,AI大幅提升程序员的工作效率,同样…

陆奇演讲刷屏:ChatGPT的成功,是AI新范式的成功!将带来3个大的机会

作者| Mr.K 编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 这几天,被陆奇的最新演讲刷屏了。 陆奇是前百度总裁兼COO,之前是微软副总裁、雅虎副总裁,被称为“硅谷最有权势的华人高管”,每离开一家公司都会造成股价…

ChatGPT - 如何高效的调教ChatGPT (指令建构模型-LACES问题模型)

文章目录 定义1. Limitation(限定条件)2. Assignment(分配角色)3. Context(背景或上下文)4. Example(示例)5. Step by Step(拆分任务) 小Demo 定义 LACES问题…

LLM 系列 | 05:ChatGPT Prompt的迭代优化

简介 梅子留酸软齿牙,芭蕉分绿与窗纱。日长睡起无情思,闲看儿童捉柳花。小伙伴们好,我是微信公众号 《小窗幽记机器学习》 的小编:卖冰棍的小男孩。 更多、更新文章欢迎关注微信公众号:小窗幽记机器学习。后续会持续…

与ChatGpt聊天,学习golang标签的反射机制

与ChatGpt聊天,学习golang标签的反射机制 引 ChatGPT火了以后,本拐先是恐惧,之后是拥抱。 最近很多编程知识的学习,都是通过 chatgpt来搞定。 众所周知,本拐就是一个啥技术都半斤八两的程序员,这次&#xf…

苹果Message应用图标被指抄袭微信、HipChat图标

苹果发布的新版桌面系统os x mountain lion预览版中,message程序可谓是大家最为关心的功能之一,这款程序的图标也引起不少争议。目前所有的mac用户都可以安装这款小程序测试,无限制的与ios设备间发送短信和图片。 这两年微信成为了时尚一族必…

iPhone 图标设置

-- 2012-03-23 让你的应用支持新iPad的Retina显示屏 一、应用图片 标准iOS控件里的图片资源,苹果已经做了相应的升级,我们需要操心的是应用自己的图片资源。就像当初为了支持iPhone 4而制作的2x高分辨率版本(译者:以下简称高分&…

IOS App 的图标和启动图的烦恼

前言: 好多iOS App的开发者都会面临的一个问题,那就是 App 的图标(icon) 和启动图(launch images) 。 一些没有经验(指的是没做过App审计的)的UI设计师,不知道该怎么做。…

iOS替换应用图标

iOS 动态替换应用icon Xcode 集成多套测试 App 图标如何给App添加多套图标如何验证是否配置多套图标成功了如何通过代码动态替换应用图标如何无感替换应用图标 Xcode 集成多套测试 App 图标 实现多套 App 图标,依赖** Xcode13及以上版本** 。 在Xcode13之前&#…