红色有角F叔对《C++语言的设计与演化》的笔记(8)

C++语言的设计与演化
  • 书名: C++语言的设计与演化
  • 作者: 斯特劳斯特鲁普
  • 页数: 400
  • 出版社: 科学出版社
  • 出版年: 2012-3
  • 第268页
    看起来对每个可能的语言及其每种使用都存在“很好的证据”,我们还需要数据。如果没有数据和适当的评估试验,我们就会像那些希腊哲学家,他们确信宇宙中的所有东西都是由某几种物质组成的,他们天才地辩论了几个世纪,然而还是无法确定究竟是哪四种(或者是五种)基本物质。
    2013-09-28 09:43:55 回应
  • 第十六章 异常处理
    经过了几年的讨论,给我留下最深刻印象的是,一个人可以站在任何位置,编织出一套能使人信服的逻辑论据。在论述异常处理的开创性论文中就这样做的。我们现在是站在古希腊哲学家的位置,在争论着宇宙的本质方面,如此的激烈而敏锐,以至于根本就忘记去研究它了。
    2013-09-28 09:56:57 1人推荐 回应
  • 第十六章 异常处理
    为了做出可靠的系统,你需要尽快地把非同步事件映射到某种形式的进城模型中。
    低级中断系统应该尽可能与普通程序分离。
    想起来 linux 的 signalfd() 系统调用蛮讨喜的。
    2013-09-28 10:03:30 回应
  • 1985-1993 年表
    标准化绝对不是一件容易的事情。在这个委员会里有各种各样的人,有的人来到这里就是为了维持现状;有的人带着一个有关现状的想法,希望能够把时间拨回到几年之前;有的人希望能与过去做彻底的决裂,设计出一个全新的语言;有的人只关心某一个问题;有的人只关心某一类系统;有的人在投票时完全看他们雇主的脸色行事;有的人只代表他们自己;有的人带着有关程序设计和程序设计语言的理论观点;也有的人希望的事今天就有一个标准,即使这意味着遗留下许多没有结论的问题;有的人则除了一个完美的定义之外什么也不能接受;有的人还认为 C++ 完全是一个新语言,几乎没有什么用户;有的人则代表着再过去 10 年里写出了成百万行代码的用户;如此等等。
    在标准化的规则下,我们都必须或多或少表示同意,必须达成“一致”(通常定义为一个很大的多数)。存在一些合理的规则——即使不太合理,它们也是委员会必须遵守的国家或者国际的规则。所有的利益都是合法的,让一个多数压服一个很大的少数的利益,最终将会产生一个标准,它只对某个过分狭隘的用户社团有用。这样,委员会的每个成员都要学会尊重那些看起来是异己的观点,学会妥协。这些倒很符合 C++ 的精神。
    2013-10-01 11:02:48 回应
  • 第三章 C++ 的诞生
    我过去和现在的印象都说明,许多程序设计语言和工具都是在提供了解答之后再去寻找问题,而我则确定自己的工作绝不能混同于这一类东西。
    良好设计的关键是对问题的深入认识,而不是提供了多少最高级的特征。
    写它(《C++程序设计语言》 )的时候我带着强烈的决心,不准备去鼓吹任何特殊的程序设计技术。基于同样的想法,我也害怕由于忽视和家长式作风的误导而给语言构筑一些限制。我不希望这本书变成一篇有关自己个人爱好的宣言。
    2013-10-01 11:08:26 回应
  • 7.4.3 期望与看法
    人们经常对 AT&T 容许其他人实现 C++ 的行为表示诧异,这实际上说明了他们很不了解法律及 AT&T 的目标。一旦出版了 C++ 的参考手册,就再没办法去组织任何人写出一个实现了。进一步说,AT&T 不止是允许其他人加入 C++ 的实现、工具和教育等这样蓬勃发展的大市场,它还欢迎和鼓励他们这样做。大部分人都忽略了这样一个事实,那就是 AT&T 作为程序设计产品的消费者远远大于它作为一个生产者。因此,AT&T 从 C++ 领域的竞争者那里获益匪浅。
    2014-04-19 23:05:47 4回应
  • 一般性的背景
    对文学的热爱更增强了我的认识:仅仅依据理论和逻辑做决策是没有希望的。.... 经常遇到这种情况,如果我试图取缔一个我个人不喜欢的语言特性时,我总抑制住自己这样做的欲望,因为我不认为自己有权把个人的观点强加给别人。我知道通过强力地推行逻辑,毫无同情心地谴责“思想中坏的、过时的、混乱的习惯”,可能在相对短的时间内能有更多的建树。但是,人的代价总是最高的。
    2015-04-06 10:55:59 1人推荐 回应
  • 一般性的背景
    我的希望是慢慢地——经常是令人痛苦的慢——推动人们去试验一些新技术,去接受那些适合他们需要或者口味的东西。确实存在着更有效的技术去达到“宗教信仰转变”或者“革命”,但是我极端讨厌这类技术,从根本上怀疑它们在长时间和大范围上的作用。经常看到的情况是,如果一个人可以很容易地转变到“信仰X”,那么进一步地转变到“信仰Y”也是很可能的。这样的收获是短暂的。我喜欢怀疑论者而不是“真诚的信徒”。我把一点点实在的证据看得比许多理论更有价值,把实际经验的结果看得比许多逻辑论述更为重要。 然而,这些观点也很容易导致宿命而接受现状。此外,一个人如果不打破几个鸡蛋是做不出鸡蛋饼的,而且大部分人实际上确实不希望变化——至少“不是现在”,不是以某种可能搅乱了它们日常的生活的方式。这就是需要尊重事实且需要一点理想主义出现的地方。在程序设计领域内,一般地说,世界上事情并不总是处在很好的状态,要改进它们,有许多事情是可以做的。我设计 C++ 只是为了解决一个问题,而不是想证明一种观点,而它的成长又能够服务于它的使用者。这里的基本观点是,完全可能通过逐步改变去达成一种进步。最理想的情景是保持最大的变化速率,而这种变化又确实增加了它所涉及的那些人的福祉。最主要的困难在于确定是什么构成了真正的进步,开发出一些技术以实现平滑的转变,还要避免由于过度狂热而导致的暴行。
    2015-04-06 11:55:46 回应

红色有角F叔的其他笔记  · · · · · ·  ( 全部654条 )

注定一战
1
美国反对美国
1
哲学·科学·常识
1
计算机组成(第6版)
2
图解TCP/IP(第5版)
1
沸腾十五年
2
重新理解创业
8
雄性衰落
3
股市真规则
1
资本和收入的性质
2
存在主义是一种人道主义
3
程序员的职业素养
1
何为良好生活
1
活出生命的意义
3
货币的教训
3
Docker——容器与容器云(第2版)
2
政治的人生
4
中国巨债
3
深入浅出React和Redux
5
历史的教训
4
聪明的投资者
8
Designing Data-Intensive Applications
4
投资中最简单的事
5
供给的逻辑
1
逃不开的经济周期
1
图解服务器端网络架构
1
斯坦福极简经济学
3
政治的逻辑
4
原则
5
大数据之路
1
在苍茫中传灯
4
巴菲特传(纪念版)
1
中产阶级如何保护自己的财富
1
指数基金投资指南
4
模式分类
2
深度学习
1
我看电商
2
数据挖掘导论
1
中国国家治理的制度逻辑
2
漫步华尔街
2
尽在双11:阿里巴巴技术演进与超越
2
共同基金常识
3
企业IT架构转型之道:阿里巴巴中台战略思想与架构实战
6
未来简史
2
MySQL DBA修炼之道
1
大国大城
2
计算广告
4
机器学习
1
集体智慧编程
1
重新定义公司
1
Hadoop应用架构
1
第二性
6
硅谷钢铁侠
1
大数据
5
经营的本质
1
人人都是产品经理
7
你凭什么做好互联网
4
Spark机器学习
2
聊聊架构
8
游戏引擎架构
1
美国大城市的死与生(纪念版)
5
给大家看的Photoshop讲座
1
技术的本质
5
我们房地产这些年
2
行动的勇气
2
合作的进化
5
马克斯·韦伯与德国政治:1890—1920
6
数据库索引设计与优化
1
精益企业
7
高可用MySQL
2
发布!软件的设计与部署
2
项目管理艺术
2
右派国家
5
现实感
4
领域驱动设计
11
从0到1
1
高效程序员的45个习惯
1
可扩展的艺术
3
空之境界 上
1
成为技术领导者
1
改革的逻辑
3
修改代码的艺术
9
恰如其分的软件架构
7
软件开发者路线图
3
实现领域驱动设计
1
21世纪资本论
9
持续交付
16
构建之法
6
黑格尔导论
19
极端的年代
1
微服务设计
10
Site Reliability Engineering
5
测试驱动的面向对象软件开发
3
城市的胜利
2
对知识的恐惧
5
ZeroMQ
6
现代经济学主要流派
7
数学之美
2
程序员的思维修炼
1
大教堂与集市
1
一切坚固的东西都烟消云散了
5
兜售繁荣
1
数据科学与工程技术丛书
1
政治的细节(第10版)
8
发展研究指南(第二版)
2
代码大全(第2版)
2
企业应用架构模式
9
The Datacenter as a Computer
3
无情的革命
6
新教伦理与资本主义精神
3
人类简史
7
Understanding MySQL Internals
2
他改变了中国
1
态度改变与社会影响
4
复杂
2
民主新论
19
人件
2
国家的常识
4
乌合之众
3
Web Operations
2
个人印象
4
湖上闲思录
2
自由及其背叛
7
百年中国经济史笔记
1
改变
4
创新与企业家精神
5
Cassandra
3
不敢止步
4
意志力
2
通向财务自由之路
1
制造同意
6
美国种族简史
4
NoSQL Distilled
4
理解专业程序员
2
一个自由主义者的良知
4
政治经济学要义
2
施瓦辛格健身全书
2
房地产的繁荣与萧条
5
为学十六法
2
Akka in Action
1
Java虚拟机并发编程
3
软件工艺
3
面向模式的软件架构,卷3
1
动物精神
4
非理性繁荣
10
MongoDB权威指南
2
海量数据库解决方案
1
Erlang/OTP并发编程实战
1
学术与政治
12
Java并发编程实战
16
论中国
3
金融炼金术
4
多处理器编程的艺术
1
Effective java 中文版(第2版)
1
中國近代史(下冊)
6
系统之美
6
压力下的角逐
2
古代东方史
1
Go 语言程序设计
1
Remote
1
深入Linux内核架构
2
中國近代史(上冊)
3
隐秩序
1
空之境界(上下集合售)
1
开放社会
4
中国近代史八种
5
喀提林阴谋 朱古达战争
1
政治秩序的起源
5
现代性的后果
2
失去的胜利
9
了不起的盖茨比
5
许倬云说历史:台湾四百年
2
大规模分布式存储系统
1
C++网络编程(卷1)
2
在约定的场所
1
中国的宗教
2
了不起的盖茨比
1
希腊罗马名人传(全三册)
2
自私的基因
2
学龠
1
中国政治思想史
4
列克星敦的幽灵
1
人月神话
2
现代体系结构上的UNIX系统
1
虚拟机
2
朱熹的历史世界
1