网站历史记录怎么恢复wordpress 推酷

web/2025/9/25 13:18:57/文章来源:
网站历史记录怎么恢复,wordpress 推酷,官方商城下载,wordpress 去除底部关于声明式编程的还有一部分重要的内容#xff0c;那便是函数式编程。函数式编程已经有很长时间的历史了#xff0c;当年LISP便是个函数式编程语言。除了LISP以外我们还有其他许多函数式编程语言#xff0c;如APL、Haskell、Scheme、ML等等。关于函数式编程在学术界已经有过… 关于声明式编程的还有一部分重要的内容那便是函数式编程。函数式编程已经有很长时间的历史了当年LISP便是个函数式编程语言。除了LISP以外我们还有其他许多函数式编程语言如APL、Haskell、Scheme、ML等等。关于函数式编程在学术界已经有过许多研究了在大约5到10年前许多人开始吸收和整理这些研究内容想要把它们融入更为通用的编程语言。现在的编程语言如C#、Python、Ruby、Scala等等它们都受到了函数式编程语言的影响。 我想在这里先花几分钟时间简单介绍一下我眼中的函数式编程语言。我发现很多人听说过函数式编程语言但还不十分清楚它们和普通的命令式编程语言究竟有什么区别。如今我们在使用命令式编程语言写程序时我们经常会写这样的语句嗨x等于x加一此时我们大量依赖的是状态可变的状态或者说变量它们的值可以随程序运行而改变。 可变状态非常强大但随之而来的便是叫做“副作用”的问题。在使用可变状态时你的程序则会包含副作用比如你会写一个无需参数的void方法然后它会根据你的调用次数或是在哪个线程上进行调用对程序产生影响因为void方法会改变程序内部的状态从而影响之后的运行效果。 而在函数式编程中则不会出现这个情况因为所有的状态都是不可变的。你可以声明一个状态但是不能改变这个状态。而且由于你无法改变它所以在函数式编程中不需要变量。事实上对函数式编程的讨论更像是数学、公式而不像是程序语句。如果你把x x 1这句话交给一个程序员看他会说“啊你在增加x的值”而如果你把它交给一个数学家看他会说“嗯我知道这不是true”。 然而如果你给他看这条语言他会说“啊y等于x加一就是把x 1的计算结果交给y你是为这个计算指定了一个名字”。这时候在思考时就是另一种方式了这里y不是一个变量它只是x 1的名称它不会改变永远代表了x 1。 所以在函数式编程语言中当你写了一个函数接受一些参数那么当你调用这个函数时影响函数调用的只是你传进去的参数而你得到的也只是计算结果。在一个纯函数式编程语言中函数在计算时不会对进行一些神奇的改变它只会使用你给它的参数然后返回结果。在函数式编程语言中一个void方法是没有意义的它唯一的作用只是让你的CPU发热而不能给你任何东西也不会有副作用。当然现在你可能会说这个CPU发多少热也是一个副作用好吧不过我们现在先不讨论这个问题。 这里的关键在于你解决问题的方法和以前大不一样了。我这里还是用代码来说明问题。使用函数式语言写没有副作用的代码就好比在Java或C#中使用final或是readonly的成员。 例如这里我们有一个Point类构造函数接受x和y还有一个MoveBy方法可以把一个点移动一些位置。 在传统的命令式编程中我们会改变Point实例的状态这么做在平时可能不会有什么问题。但是如果我把一个Point对象同时交给3个API使用然后我修改了Point那么如何才能告诉它们状态改变了呢可能我们可以使用事件blablabla如果我们没有事件那么就会出现那些不愉快的副作用了。 那么使用函数式编程的形式写代码你的Point类还是可以包含状态例如x和y不过它们是readonly的一旦初始化以后就不能改变了。MoveBy方法不能改变Point对象它只能创建一个新的Point对象并返回出来。这就是一个创建新Point对象的函数不是吗这样就可以让调用者来决定是使用新的还是旧的Point对象但这里不会有产生副作用的情况出现。 在函数式编程里自然不会只有Point对象例如我们会有集合如DictionaryMapList等等它们都是不可变的。在函数式编程中当我们向一个List里添加元素时我们会得到一个新的List它包含了新增的元素但之前的List依然存在。所以这些数据结构的实现方式是有根本性区别的它们的内部结构会设法让这类操作变的尽可能高效。 在函数式编程中访问状态是十分安全的因为状态不会改变我可以把一个Point或List对象交给任意多的地方去访问完全不用担心副作用。函数式编程的十分容易并行因为我在运行时不会修改状态因此无论多少线程在运行时都可以观察到正确的状态。两个函数完全无关因此它们是并行还是顺序地执行便没有什么区别了。我们还可以有延迟计算可以进行Memorization这些都是函数式编程中十分有趣的方面。 你可能会说那么我们为什么不都用这种方法来写程序呢嗯最终就像我之前说的那样我们不能只让CPU发热我们必须要把计算结果表现出来。那么我们在屏幕上打印内容时或者把数据写入文件或是Socket时其实就产生了副作用。因此真实世界中的函数式编程往往都是把纯粹的部分进行隔离或是进行更细致的控制。事实上也不会有真正纯粹的函数式编程语言它们都会带来一定的副作用或是命令式编程的能力。但是它们默认是函数式的例如在函数式编程语言中所有东西默认都是不可变的你必须做些额外的事情才能使用可变状态或是产生危险的副作用。此时你的编程观念便会有所不同了。 我们在自己的环境中开发出了这样一个函数式编程语言F#已经包含在VS 2010中了。F#诞生于微软剑桥研究院由Don Syme提出他在F#上已经工作了5到10年了。F#使用了另一个函数式编程语言OCaml的常见核心部分因此它是一个强类型语言并支持一些如模式匹配类型推断等现代函数式编程语言的特性。在此之上F#又增加了异步工作流度量单位等较为前沿的语言功能。 而F#最为重要的一点可能是在我看来它是第一个和工业级的框架和工具集如.NET和Visual Studio有深入集成的函数式编程语言。F#允许你使用整个.NET框架它和C#也有类似的执行期特征例如强类型而且都会生成高效的代码等等。我想现在应该是展示一些F#代码的时候了。 首先我想先从F#中我最喜欢的特性讲起这是个F#命令行……打开命令行窗口以及一个F#源文件……F#包含了一个交互式的命令行这允许你直接输入代码并执行。例如输入5……x等于5……然后x……显示出x的值是5。然后让sqr x等于x乘以x于是我这里定义了一个简单的函数名为sqr。于是我们就可以计算sqr 5等于25sqr 10等于100。 F#的使用方式十分动态但事实上它是一个强类型的编程语言。我们再来看看这里。这里我定义了一个计算平方和的函数sumSquares它会遍历每个列表中每个元素平方后再把它们相加。让我先用命令式的方式编写这个函数再使用函数式的方式这样你可以看出其中的区别。 let sumSquaresI l let mutable acc 0 for x in l do        acc - acc sqr xacc 这里先是命令式的代码我们先创建一个累加器acc为0然后遍历列表l把平方加到acc中然后最后我返回acc。有几件事情值得注意首先为了创建一个可变的状态我必须显式地使用mutable进行声明在默认情况下这是不可变的。 还有一点这段代码里我没有提供任何的类型信息。当我把鼠标停留在方法上时就会显示sumSquaresI方法接受一个int序列作为参数并返回一个int。你可能会想int是哪里来的嗯它是由类型推断而来的。编译器从这里的0发现acc必须是一个int于是它发现这里的加号表示两个int的相加于是sqr函数返回的是个int再接下来blablabla……最终它发现这里到处都是int。 如果我把这里修改为浮点数0.0鼠标再停留一下你就会发现这个函数接受和返回的类型都变成float了。所以这里的类型推断功能十分强大也十分方便。 现在我可以选择这个函数让它在命令行里执行然后调用sumSquaresI提供1到100的序列就能得到结果了。 let rec sumSquaresF l match l with    | [] - 0| h :: t - sqr h sumSquaresF t 那么现在我们来换一种函数式的风格。这里是另一种写法可以说是纯函数式的实现方式。如果你去理解这段代码你会发现有不少数学的感觉。这里我定义了sumSqauresF函数输入一个l列表然后使用下面的模式去匹配l。如果它为空则结果为0否则把列表匹配为头部和尾部然后便将头部的平方和尾部的平方和相加。 你会发现在计算时我不会去改变任何一个变量的值我只是创建新的值。我这里会使用递归就像在数学里我们经常使用递归把一个公式分解成几个变化的形式以此进行递归的定义。在编程时我们也使用递归的做法然后编译器会设法帮我们转化成尾递归或是循环等等。 于是我们便可以执行sumSquaresF函数也可以得到相同的结果。当然实际上可能你并不会像之前这样写代码你可能会使用高阶函数 let sumSquares l Seq.sum (Seq.map (fun x - x * x) l ) 例如这里我只是把函数x乘以x映射到列表上然后相加。这样也可以得到相同的结果而且这可能是更典型的做法。我这里只是想说明这个语言在编程时可能会给你带来完全不同的感受虽然它的执行期特征和C#比较接近。 这便是关于F#的内容。 原文链接http://blog.zhaojie.me/2010/05/trends-and-future-directions-in-programming-languages-by-anders-3-functional-programming-and-fsharp.html .NET社区新闻深度好文微信中搜索dotNET跨平台或扫描二维码关注

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

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

相关文章

公司品牌flash网站设计网站与装修公司

1143 最长公共子序列(medium) 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。 一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字…

深圳罗湖医疗集团网站建设做网站有哪些费用

力扣101. 对称二叉树 链接 https://leetcode.cn/problems/symmetric-tree/description/ 题目描述 给你一个二叉树的根节点 root , 检查它是否轴对称。示例1:此树是对称的。示例2:此树也是对称的示例3:此树不对称 思路 一颗…

建站模板更改wordpress统计插件

大家好,才是真的好。 如果你还不知道什么是RSS,从V站截图一份放到这里供大家参考: 其实,Domino上也可以很简单地发布RSS站点,以供内部或外部用户订阅。 前面其实我们说了不少关于Notes客户端的RSS订阅功能&#xff…

女人网站源码微信小程序 创建网站

首先,下载小皮面板:https://www.xp.cn/ 点Windows版本: 开始下载: 或者直接从百度网盘下载: 链接:https://pan.baidu.com/s/1gcaiK54yW7DcrYld22V06A 提取码:4oj8 –来自百度网盘超级会员V9…

常州网站建设培训郑州网络营销与网站推广

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 一、 在微服务系统中,不同应用服务可能会有各种不同的相互调用 。 springcloud 集成了 zipkin 来实现对于不同服务调用的追踪…

珠海做网站的公司有哪些山西城乡建设网站

pctfree这个参数定义了一个块保留空间的百分比,保留空间是为了将来可能发生的更新操作,因为更新可能增大被更新行占用的空间,如果此时该块没有可利用空间,那么只有发生row migrate了,从而会降低I/O性能。换句话说&…

网站建设对比模板建站平台

1.接口域名必须是https,有ssh证书。不能用ip地址。 2.需要在微信公众平台进行配置 微信公众平台->开发-> 开发管理->开发设置 对服务器域名和业务域名进行配置对业务域名进行配置时,需要下载校验文件,放在域名根目录下

判断网站wordpress主题开发班

问题 设$\mathbb P$为全体素数的集合,证明级数$$\sum_{p\in\mathbb P}\frac{1}{p}$$ 发散. 证明 做这个问题前,必须知道一个常识:全体素数集$\mathbb P$是无限的.所以题中才能作为级数. 如果结论不成立,则存在$k\in\mathbb N$使得$$\sum_{nk1}^{\infty}\frac{…

怎么制作网站下载软件网站设计素材图片

最近感触最深的就是一个项目需要好的架构设计,不会因为后面不断延伸业务需求造成业务代码的不断堆砌,破坏整个项目的层次结构,也让新来的团队成员更好的上手项目,从清晰的结构就能很快的了解整个业务的流程。一个好的架构设计&…

小米发布会图文襄樊seo

转载自 MySQL count()函数 MySQL COUNT()函数介绍 COUNT()函数返回表中的行数。 COUNT()函数允许您对表中符合特定条件的所有行进行计数。 COUNT()函数的语法如下 - COUNT(expression)SQL COUNT()函数的返回类型为BIGINT。 如果没有找到匹配的行,则COUNT()函…

wordpress网站会员太多app模板下载网站模板

CSP-201503-3-节日 关键点:格式化输出 在C中,格式化输出通常利用iostream库中的功能,特别是iomanip头文件提供的一系列操作符。这些操作符用于控制输出格式,如宽度、填充、对齐方式等。在你提供的代码中,用于格式化输…

网站建设全包广州中介专门做别墅的网站

号过滤绕过 号和不加通配符的 like 是一样的。 还可以使用 < >号来绕过&#xff0c;<> 在mysql中等于! 如果在加一个! 双重否定代表肯定 就是了 空格过滤绕过 /**/ &#xff0c;()&#xff0c;&#xff0c;tab&#xff0c;两个空格 or and xor not 过滤绕过 a…

申请注册网站域名.商城营销策略有哪几种

一、介绍 QCustomPlot是一个用于绘图和数据可视化的Qt C小部件。它没有进一步的依赖关系&#xff0c;提供友好的文档帮助。这个绘图库专注于制作好看的&#xff0c;出版质量的2D绘图&#xff0c;图形和图表&#xff0c;以及为实时可视化应用程序提供高性能。QCustomPlot可以导出…

网站建设方案和报价qq网页版登录官网登录

一、背景 开发者编写完成源码&#xff0c;还需要进行编译、测试、打包、部署等一系列操作。在一些小型项目中&#xff0c;还可能通过手动方式进行以上操作。但是在大型项目中&#xff0c;难以确定以上操作的顺序&#xff0c;而且会耗费更高的时间成本。 1.构建工具 构建工具…

福田设计网站wordpress 菜单管理系统

软考-系统架构设计师-2021年上午选择题真题 考试时间 8:30 ~ 11:00 150分钟 1.前趋图(Precedence Graph)是一个有向无环图&#xff0c;记为&#xff1a;→(Pi,Pj)Pi must Complete Before Pj may strat), 假设系统中进程P{P1, P2,P3,P4, P5, P6, P7, P8}&#xff0c; 且进程的…

南京培训网站建设云商城官网

有时候一行代码或者是注释会比较长&#xff0c;为了方便阅读&#xff0c;习惯让它折行显示&#xff1b;而VSCode在默认情况下&#xff0c;是不会自动折行的&#xff0c;这不利于阅读&#xff0c;我们可以通过设置来达到折行的效果。 具体操作步骤&#xff1a; 打开左下角的管…

平昌县建设局网站深圳市宝安区

目录 一、以太网 二、MAC地址 三、MTU 四、ARP协议 一、以太网 “以太网”不是一种具体的网路&#xff0c;而是一种技术标准&#xff1a;既包含了数据链路层的内容&#xff0c;也包含了一些物理层的内容&#xff0c;例如&#xff1a;规定了网络拓扑结构、访问控制方式、传…

镇江网站建设一般多少钱怎样在网上做网站

在分布式架构中&#xff0c;网络通信是底层基础&#xff0c;没有网络&#xff0c;也就没有所谓的分布式架构。只有通过网络才能使得一大片机器互相协作&#xff0c;共同完成一件事情。 同样&#xff0c;在大规模的系统架构中&#xff0c;应用吞吐量上不去、网络存在通信延迟、我…

如何建一个网站教程微信网站开放

&#x1f389;不定期分享源码&#xff0c;关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 &#x1f3f7;️本套采用HTMLCSS&#xff0c;未使用Javacsript代码&#xff0c;共有4个页面。 二、作品演示 三、代…

用asp做的网站有哪些张掖网站设计公司

全世界有3.14 % 的人已经关注了数据与算法之美软件正在统治世界。而软件的核心则是算法。算法千千万万&#xff0c;又有哪些算法属于“皇冠上的珍珠”呢&#xff1f;Marcos Otero 给出了他的看法。什么是算法&#xff1f;通俗而言&#xff0c;算法是一个定义明确的计算过程&…