2020-7-4 9:57第三壳层(n=3)可以具有三种类型的亚壳层(l=0,#34;s&34;,l=1,";p";和l=2,";d";轨道)。第四壳层(n=4)可以具有四种类型的子壳层(l=0,#34;s#34;,l=1,";p";,l=2,";d";和l=3,";f";轨道)。如......
2020-6-28 17:41Haskell程序是在两个世界的交界处构建的:一个是类型,另一个是值。值是可操作的运行时实体,在语法上由代码中的术语表示。为此,类型对术语进行分类。它们提供了强大的抽象来组织数据、确定数据应该如何存储在内存中、通过各种操作,等等。从表面上看,这些领域之间的区别很简单:类型指的是数据类型,它们要么是内置的(如Integ......
2020-6-27 2:9今天,我们很兴奋地发布TypeScript编程语言的下一个重要里程碑的测试版:TypeScript4.0。
这个测试版让我们迈出了进入TypeScript4.0的第一步,虽然它带来了一个新的主要版本,但不要担心-没有比往常更大的突破性变化。我们发展TypeScript的理念一直是提供一条升级路径,将破坏性的破坏性更改......
2020-6-26 5:18注意:这是一篇来自Sixten编程语言文档的老帖子,我对它进行了润色和充实。在写完之后,我发现了Salsa,这是一个与我的Rock库有着非常相似目标的Rust库,它也绝对值得一看!
编译器不再仅仅是获取一堆源文件并产生汇编代码的黑匣子。我们期望他们:
是增量的,这意味着如果我们在做了一些更改之后重新编译一个项目,我们......
2020-6-20 3:55已经快4年了。他们有4年了!我们学到了很多东西。我很疲惫,但最重要的是,我很高兴,我很感激,我很有希望。
GHC向线型的旅程始于2016年秋天。在这个时间点上,Jean-Philippe Bernardy和我从事分布式存储研发已经有一年左右的时间了。在此之前,我们两人都刚刚发表了对线性逻辑的研究。而且,我们开始在很多......
2020-6-19 0:2唯一的依赖项是Boost/预处理器。如果您在类UNIX系统上,只需运行以下脚本:
由于poica是一个仅包含头文件的库,因此您可以随意将必要的文件复制到您的项目中,并使用#include<;poica.h>;导出其API(使用-i编译器选项)。就这些。
通常在C语言中,我们使用联合来告诉编译器我们将以不同的方......
2020-6-18 22:38最近,围棋团队宣布了他们围棋提案中泛型的最新设计草案。它详细介绍了做出某些决定的原因、实施细节等。
在本文中,我的目标是总结即将发生的主要变化,因为整个设计草案可能会让很多人感到厌烦。
我将提供一些代码片段来演示主要功能,并让您有机会体验它们,这要归功于新的支持泛型的围棋游乐场。
下面是在类型参数上没有任何约束的泛型......
2020-6-18 2:542018年,我在Goas中实现了一个玩具哈希表,快速刷新了Go地图等数据类型的工作原理,该实现专门使用映射到字符串值的字符串键。
两年后,也就是2020年6月,Go团队发布了一篇题为“泛型的下一步”(The Next Step For Generics)的博客文章,提供了一个基于扩展Go现有接口的更新的泛型设计草案,......
2020-6-13 2:52Expresso是一种最小静态类型的函数式编程语言,设计时考虑了嵌入式和/或可扩展性。这种最小语言的可能用例包括配置(如Nix)、数据交换(如JSON),甚至是自定义外部DSL的起点。
Expresso是一种函数式语言,因此我们使用lambda术语作为基本的抽象手段。要创建命名函数,我们只需使用let绑定一个lamb......
2020-6-5 0:31反模式是解决总体上使事情变得更糟的问题的常见解决方案。这篇博客文章旨在强调Julia代码中常见的几个反模式。我怀疑这在很大程度上是由于其他语言带来的包袱,这些语言不是反模式,但实际上是好的模式。这篇文章是为了澄清事情。
在这些问题上,有些人会不同意我的观点。没关系,他们可以犯错(😂I jest)。引用普赖斯、特科尔斯......
2020-5-30 4:45这是对原文章的更新,更短、更简单、更合乎逻辑、更正确。
许多开发人员工具,如IDE、框架、库和链接器,都试图为JavaScript提供某种级别的类型安全。本文解释了什么是类型安全,为什么需要类型安全,以及如何使用原生JavaScript实现类型安全。
类型安全是编程语言阻止或防止类型错误的程度。当向函数或表达式提供意......
2020-5-23 15:14我曾经在某种程度上持有所有这些误解,今天我看到许多初学者都在与这些误解作斗争。我的一些术语可能不是标准的,所以这里有一张我使用的速记短语的表格,以及我想要表达的意思。
简而言之:变量的生存期是编译器可以静态验证它所指向的数据在其当前内存地址有效的时间长度。我现在将用接下来的6000个单词更详细地介绍人们通常会感到困惑......
2020-5-21 1:48C#9.0正在成型,我想与您分享我们对该语言下一版本中添加的一些主要特性的看法。
对于每个新版本的C#,我们都努力在常见的编码场景中实现更高的清晰度和简单性,C#9.0也不例外。这一次的一个特别焦点是支持数据形状的简洁和不可变的表示形式。
对象初始化器非常棒。它们为某种类型的客户端提供了一种非常灵活且可读的格式来创建......
2020-5-20 22:151987年,在发表关于数据抽象和层次结构的主旨演讲时,Barbara Liskov介绍了最终成为Liskov替换原则的想法。以下是对该原则的现代(且非常正式)描述:
设Φ(X)是关于类型T的对象x可证明的性质,则Φ(Y)对于类型S的对象y应该为真,其中S是T的子类型。
当我第一次读到定义时,我所理解的就是它在某种程度......
2020-5-16 2:16在这篇文章的大多数评论中,有人问我为什么选择图形数据库而不是其他东西?这是一个很难回答的问题,因为我目前的经验仅限于图形数据库方面。我猜你也在想同样的事情,所以这是我迄今为止最好的回答。在我职业生涯的这个阶段,如果我在编写金融软件,我只会选择关系型数据库。关系数据库是非常严格的,所以您需要真正确保您事先了解您的数据。......
2020-5-15 5:43值得注意的是,在导致类型理论兴起的历史进程中,悖论经常出现。解决罗素的悖论导致了他的类型理论。哥德尔的不完全性定理的证明依赖于说谎者悖论的一个变体。丘奇和图灵用他们独特的形式主义概括了这一结果。直觉主义类型理论就是为了避免这些悖论而设计的。事实就是如此。
作为一名本科生,作为谓词逻辑课程的一部分,我有幸学习了哥德尔的......
2020-5-13 21:2如果您不熟悉TypeScript,那么它是一种通过添加类型声明和注释的语法而构建在JavaScript之上的语言。TypeScript编译器可以使用此语法对代码进行类型检查,然后输出在许多不同运行时上运行的干净、可读的JavaScript。静态类型检查可以在我们运行代码之前,或者甚至在我们保存文件之前就告诉我们代码中......
2020-5-9 0:7我努力从“JavaScript类型系统编译器”是如何实现的低级视图中找到解释。我了解类型系统的许多工作,但不确定涉及的机制以及它们如何协同工作。
本文旨在揭示幕后工作的一些基本原理。不可能把重点放在一篇文章中的所有内容上,所以这里我们将专门关注“类型检查”。从概述类型系统开始,然后构建我们自己的编译器,它可以运行类型......
2020-5-5 18:43学生们经常要求推荐他们下一步应该学习什么语言。如果你正在找一份工业界的工作,我的回答是学习目前最热门的东西:C++、Java和C#--可能还有Python、Ruby、PHP和Perl。
另一方面,如果你对启蒙、学术研究或初创企业感兴趣,那么你选择下一门语言的标准不是就业能力,而是表达能力。在学术研究和创业中,你需要提......
2020-5-2 18:6在表现型语言中,开发人员通常需要使用较少的临时变量,这意味着在典型的代码中定义的名称较少,但这些名称具有更高的重要性。
ident:type语法让开发人员将重点放在名称上,将其放在其类型注释之前。这意味着名称的垂直偏移量保持一致,无论是否存在类型批注(以及其长度有多长)1:
val x:string=";hel......