如何看待文章 《The two factions of C++》?
- [ ] c++的两个派系 #share
如何看待文章 《The two factions of C++》?
transduction
转导
Go语言程序员推荐使用 驼峰式 命名,当名字由几个单词组成时优先使用大小写分隔,而不是优先用下划线分隔
命名习惯
如果你想要相邻的几个case都执行同一逻辑的话,需要自己显式地写上一个fallthrough语句来覆盖这种默认行为。不过fallthrough语句在一般的程序中很少用到。
fallthrough语句
而在表达式 x+y 中,可在 + 后换行,不能在 + 前换行
golang 换行符位置有限制
剖析 SPI 在 Spring 中的应用
当枚举遇到位掩码,还能这么玩?
一门语言没有ad hoc polymorphism,那应该怎么解决呢?
为什么诸多编程语言都将模式匹配作为重要构成?
如何设计解释器的文件结构使之更优雅?
Jvm规范中的LDC_W指令问题?
java System.gc() 与 Runtime.getRuntime().gc() 有什么区别?
专攻哪门编程语言好?
Java中的泛型会被类型擦除,那为什么在运行期仍然可以使用反射获取到具体的泛型类型?
IDE的自动提示是如何实现的?
为啥 Erlang 没有像 Go、Scala 语言那样崛起?
为什 Ada 语言没有普及开?
看一些 Type Inference 的论文感觉吃力,需要补哪些知识?
编程语言中, type, typed, typing 有什么区别?
什么样的类型系统才是 Unsound 的?
Daniel P. Friedman的新书The Little Typer怎么样?
如何有步骤地实现一个解释器?如果采用低级语言,如 C 之类的语言来实现像 Lisp 这样的语言,需要什么知识和工具?
对大量使用 immutable data structure 的语言,其 VM 和 GC 会有何特点?
在不使用JIT的前提下,解释器能达到多高的速度呢?
SystemF 对应二阶逻辑,Fω 对应高阶逻辑,这个阶是怎么算得?
[PLT]和[数理逻辑、类型论、抽象代数及范畴论]的关系是什么?
Cut elimination对于STLC以及其他type system的意义?
设计闭包(Closure)的初衷是为了解决什么问题?
从语言设计的角度来看, Pascal 是一门优秀的语言吗?
和 C++ 相比,用 Fortran 编程是怎样的体验?
什么是闭包?
Scheme 适合用来做什么?
OCaml 语言能做些什么?
Racket有contract为什么还要加一个type system?
如何理解编程语言中「操作符」(operator)的概念?
语言设计中运算符优先级如何确定?
学习程序语言设计与类型系统如何找到工作?
上下文有关(注意,不是无关)文法与自然语言的区别在哪里?
为什么编程语言都是上下文无关文法,不能采用上下文有关文法吗?
有哪些讲编程范式的好书或好文?
读 CS PhD 之前没有工业界经历真的没关系吗?
在计算机科学中,整体来说,PL 更接近 Theory 还是 System?
现今编程语言的理想类型系统是怎样的?
为什么大部分编程语言不支持宏?
既然 GraalVM 支持多语言且能 AOT 编译 Java,它能否用来 AOT 编译 TS?
scheme中letrec的语义要如何转化以及实现?
编程语言发展史上有哪些趣事?
对r6rs中一个letrec实现的问题?
(list 1 2 3)为什么不可以是(cons (cons (cons nil 1) 2) 3)?
是否可以说 Contract 和 Type Inference 模糊了静态类型和动态类型的界限?
First class higher order function 是编程语言发展中的弯路吗?
如何评价 MSR 的 Lean Theorem Prover?
如何看待 Lean 和 Agda 逐渐成为年轻人的第一个 prover?
TAPL这本书适合作为入门读物吗?
函数式编程是否适用于超大型项目?
(sicp 计算机程序的构造和解释) 如何理解无限长的流?
LISP可以做什么?
如何评价 The Little Schemer 系列的文风?
为什么有些程序语言的类型推断可以推断函数参数,有些不会,哪种更好?
现代语言的closure是如何处理的?
OCaml语言有什么先进的地方?
rust是不是一个no gc 的 haskell?
如何评价The Development of Chez Scheme ?
如何证明一个语言的类型系统是sound的?
类型应该是一等公民吗?
Lazy computation 在实际应用中有什么妙用?
lambda演算求值顺序的问题?
如何评价PLT Redex?
CEK machine里的C、E、K分别对应了“真实”计算机里的哪些构造?
有人说动态语言没有类型系统,这个认识是对是错?如果是错的,应该从什么角度进行回应呢?
haskell中的callcc有什么用?
为什么C/C++等少数编程语言要区分左右值?
如何看待编程语言越来越大的趋势?
如何写一个简单的编译器?
学习 scheme 有哪些资源推荐?
free一块修改过的malloc指针会发生什么?
Call By Need语义下如何做Partial Evaluation?
编程语言为什么有变量类型这个概念?
类型系统里的概念 Soundness 和形式系统中的概念一致性(Consistency)有什么异同?
normalization property、type safety与soundness有什么联系?
有没有关于编程语言的大一统理论?
Lisp的精髓是什么?
设计一门编程语言的话,你认为最重要的一定要有的特性会是哪些?
想看懂编程语言理论书籍需要什么前置的知识?
为什么我们需要了解编程的历史?
为什么 Go 语言如此不受待见?
函数式编程的函数是如何实现的?
什么是「continuation」?
系统地学习PLT需要读哪些经典书籍?
如何自己创建一种编程语言?
如何实现 Call / CC 或者阴阳谜题(Yin Yang Puzzle)?
C 语言如何实现 continuation?
scheme中的continuation实现原理是什么?
使用yield可以做哪些很酷的事情?
如何用七条公理构造call/cc?
Y Combinator 的函数签名该如何表达?
Racket 这个语言的潜力怎么样?有什么生产环境使用的例子吗?
编程语言,编译,软件工程方面,在知乎上有哪些可以关注的researcher包括PhD student?
如何评价王垠的《Sum types and union types》?
Haskell等语言中的模式匹配在C++中如何实现?
编程语言需要哪些机制才能支持模式匹配(pattern match)?
为什么说racket中的syntax object是卫生宏的基础础?
用racket实现R或Python时如何处理赋值?特别是条件语句和循环语句中的赋值,还有函数对外部变量的赋值?
图灵奖得主、《龙书》作者万字长文讲解:什么是「抽象」?
编程语言理论
可以给类型系统设计解释器吗?
为什么滑铁卢大学让大一学生从不实用的racket语言学起而不是直接上手C语言?
宏的“理论极限”是什么?
Racket这种可以把语言特性写成库的语言为何没有得到广泛的工业应用?
什么是卫生宏, 跟普通的宏以及函数有什么区别?
函数式语言能否内置一个 caching 类似的功能用于函数 Memoization, 为什么?
怎么评价这份PLT Learning By Doing Guide 攻略?
Golang vs Rust vs Dlang 哪个更有前途,哪位大牛这 3 门语言都用过?
Prolog 这类逻辑式编程语言为什么没有得到广泛应用?
你所读的计算机科学方向,有哪些不错的讲义(Notes)?
程序语言中的取余是如何实现的?
CPS变换可以用来将普通递归转变为尾递归??
完成一个Scheme解释器需要哪些知识?实现各功能都有哪些东西需要理解?
《计算机程序的构造和解释(SICP)》讨论的核心问题是什么?
编程语言的类型系统为何如此重要?
读完sicp后应该做些什么?
图灵机与λ演算是等价的,为什么前者成为了普遍接受的计算机或计算理论的模型?
知识图谱是什么?有哪些应用价值?
未来什么编程语言和开发技术会比较吃香呢?
如何评价 Clean Code 作者对 Swift 与 Kotlin 的看法?
JVM的规范中允许编程语言语义中创建闭包(closure)吗?
为什么Java闭包不能通过返回值之外的方式向外传递值?
Lambda 表达式、Block、闭包与匿名函数之间有什么区别?和 λ 演算有什么关系?
Python 中的 lambda 和「真正的」lambda 有什么区别?
Java 有哪些不好的设计?
java.lang.NullPointerException为什么不设计成显示null对象的名字或类型?
如何理解抽象解释(abstract interpretation)?
Java为什么不自举?
一门语言要做到何种地步,才能说是「自举」?
怎样理解 Partial Evaluation?
ruby语言有什么样的美学特点?
网上说 Java 的性能已经达到甚至超过 C++,是真的吗?
如何评价王垠《聊聊 DSL》?
如何看待王垠的博文《数学和编程》?
怎样看待王垠新博文《我为什么不再公开开发Yin语言》?
如何评价王垠的新文章,《给Java说句公道话》?
如何评价王垠新博文《如何掌握所有的程序语言》?
Lua 的速度为什么比 Python 快?
初学者该从哪里入门学习写 tokenizer 和 grammar analyzer ?
编译技术中各环节比重如何?
知乎的技术架构是什么样的?
如何看待七牛 CEO 许式伟开源的 Cerl?
为什么 Elm 类似语言很稀罕?未来怎样?
函数式响应型编程(Functional Reactive Programming)会在什么问题上有优势?
Objective-C是动态语言吗?为什么?
如何评价 Webkit 推出的并发 JavaScript 提案?
JavaScript一个疑问,[ ] (空数组)== true ,具体如下,请问这是为何?
应该使用 const 定义 object 和 array 吗?
getter 和 setter 方法有什么意义?
C语言或C++语言如何实现尾调用消除?
从编程语言设计的角度,如何评价SQL语言?
代数数据类型是什么?
程序语言设计界是否开始认为 Subtyping 是 Anti-pattern?
设计、更新一门通用编程语言的一般流程是怎样的?
编程语言为什么区分常量和变量?
为什么函数式语言里有recursive data type但没有recursive function type?
类型(Types)和集合(Sets)二者之间有何区别?
类型推导是否可以理解为一种编译期计算?
高级语言为什么要添加数据类型?
应该如何理解Profunctor?
java为什么不支持泛型数组?
Call by name 的语言能模拟 call by value 吗?
能否通过语义直接生成解释器?
有人质疑PL研究,比如program slicing的价值。如何解释?
OCaml 类型系统的缺陷有哪些?
每一个 Haskell 中的「范畴论的」概念都可以去 co 吗?
PLT零基础的人,要看懂王垠和彭飞在《王垠,请别再欺负我们读书少》里讨论的内容,需要掌握哪些知识?
读《The Little Schemer》时,看到第9章有partial function和total function两个概念,不是特别懂,请赐教?
如何看待Spring 5引入函数式编程思想以及Reactor?
MobX 的“间接引用值尽可能晚使用”产生的强耦合问题应该如何解决?
Haskell 的 Typeclass 怎么理解?
Higher-kinded type到底有什么用?
如何理解程序设计语言中的泛型?
为什么声明性语言往往适合于并行执行,命令代码很难在多个内核和多个机器之间并行化?
如何理解多态?
Edward Kmett 的这个讲座在讲什么?
子类型(subtyping)是不是错误(ill-defined)的东西?
subtyping和inheritance的区别是什么?
Java 泛型 <? super T> 中 super 怎么 理解?与 extends 有何不同?
如何评价Liquid Types?
程序语言中的类型系统怎么理解,它有哪些要素?如何由它演化出一门编程语言的?
该如何理解Monad?
如何理解 Extensible Effects?
如何理清 lens 这个库的各个组件,熟悉各种高级玩法?
Haskell 的带界量化多态和 Java/C# 的接口动态委派,哪一个更有利于优化?灵活性更好?
如何评价Elm 编程语言?
如何理解笛卡尔闭范畴以及它与函数式编程的关系?
如何理解Haskell中的Arrow及其用途?
stdin、stdout、stderr 标准流本质上到底是什么?
怎么看待王垠对 Haskell 的评价?
Erlang,Haskell都会的人出路在哪里?
如何理解Monad Transformer?有哪些资料可以帮助理解它?
state monad 为什么wrap的是一个 Function ?