摘要: ANTLR简介 ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured tex 阅读全文
posted @ 2021-03-01 09:19 JayWist 阅读(757) 评论(0) 推荐(2) 编辑
摘要: 函数结合性和组成 从已有的函数中构造函数 函数结合性 如果在一行中有一个函数链,他们应该如何组合? 例如,这是什么意思? 它是不是意思是z作为函数y的参数,之后用y的结果作为函数x参数? 在这个例子中,像这样: 或者意思是y作为函数x的参数,之后z作为函数x的返回函数的参数?在这个例子中,像这样: 阅读全文
posted @ 2016-09-11 16:41 JayWist 阅读(715) 评论(0) 推荐(0) 编辑
摘要: 分部应用 带入函数中的一些参数 在上一篇关于柯里化的文章中,我们了解它将多参数函数分为较小的一个参数函数。这是数学上一种正确的方式,但是不是它可以运行的唯一原因-它也导致出现一个叫做分部函数应用(partial function application)的非常强大的技术。在函数式编程中,被宽泛的使用 阅读全文
posted @ 2016-09-10 22:28 JayWist 阅读(437) 评论(0) 推荐(0) 编辑
摘要: 柯里化 将多参数函数分为较小的一个参数函数 在一些基本类型的题外话之后,我们再次回到函数上,特别是我们前面提到的难题,如果数学函数只能有一个参数,那么F#的函数怎么能有多个参数? 答案很简单:多参数的函数被重写成一系列的单个参数的新函数。这是编译器为你自动完成的。一个在函数式编程中有重要影响的数学家 阅读全文
posted @ 2016-09-10 02:09 JayWist 阅读(783) 评论(0) 推荐(0) 编辑
摘要: 函数中的类型是怎么工作的 理解类型标记 我们已经理解函数了,看看函数中的类型是怎么工作的,还有域和范围。这只是一个概述,这个"understanding F# types"系列会为你详细介绍。 首先,我们应该多理解类型符号一点。我们之后箭头符号用于域和范围,所以它总是像函数签名: 看这些示例函数 : 阅读全文
posted @ 2016-09-08 22:33 JayWist 阅读(710) 评论(0) 推荐(0) 编辑
摘要: 函数值和简单值 不分配绑定 我们再来看一下这个简单的函数: "x"是什么意思呢?"x"意思是: 1:从输入值域中接收一些值 2:我们可以先用名字为“x”来表示值,以便之后引用它。 用名字表示值得过程称为"绑定(binding)",这个"x"是输入值的"确定值"。 如果我们以5为输入值计算这个函数,我 阅读全文
posted @ 2016-09-08 01:55 JayWist 阅读(682) 评论(0) 推荐(2) 编辑
摘要: 数学函数 函数式编程背后的动力 函数式编程背后的动力来源自数学,数学函数拥有很多不错的特色,函数化语言试图现实世界中模拟。 首先,我们以为一个数添加1的函数开始。 它是什么意思呢?它似乎很简单,这意味着有一个操作,为一个数字加1。 我们先解释一些术语 可以作为函数的输入的值的集合被称为域(domai 阅读全文
posted @ 2016-09-07 09:35 JayWist 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 介绍函数化思维 看看基本的函数式编程。 现在你已经在“Why use F#”中见识到函数式编程的厉害,我们回过头再来看看什么才是真正的函数式编程,它又与面向对象编程和命令式编程有什么不同。(p.s.园子里有人翻译了@老肉鸡 的“F#之旅1 - Why use F#?为什么要用F#?”) 改变你思维的 阅读全文
posted @ 2016-09-06 19:26 JayWist 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 函数化思维系列(持续更新中.........p.s.会有些修改) 这一系列的博文将介绍函数式编程的基本原则-什么才是真正的函数式编程,它又与面向对象编程和命令式编程有什么不同。 1:介绍函数化思维 看看基本的函数式编程。 2:数学函数 函数编程背后的动力 3:函数值和简单值 不分配绑定 4:函数中的 阅读全文
posted @ 2016-09-06 19:24 JayWist 阅读(403) 评论(0) 推荐(0) 编辑