`
wmingjian
  • 浏览: 13414 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[摘录]JS版本的Y组合子(Y combinator)

 
阅读更多
var Y = function(f){
	return (function(g){
		return g(g);
	})(function(h){
		return function(x){
			return f(h(h))(x);
		};
	});
};

有关于 Y 的最让人沮丧是,当你推导出它后,完全没法儿通过只看它一眼就说出它到底是想干嘛!
分享到:
评论

相关推荐

    y_combinator_js:Y-combinator 算法的人类可读解释

    Y-Combinator(Y-组合子)是函数式编程中的一个强大工具,它允许我们无须显式地定义递归函数就能实现递归。这个算法在计算机科学中扮演着重要的角色,尤其是在编译器设计和解释器构建中。在 JavaScript 这种支持高阶...

    y_combinator_cpp:cpp中的y组合器

    在编程领域,Y组合子(Y Combinator)是一种在函数式编程语言中实现递归的重要工具,即使在没有显式定义递归函数的情况下也能实现递归。在C++这样的命令式编程语言中,虽然其主要设计风格并不强调函数式编程特性,但...

    Y-Combinator:尝试不同的Y组合器实现

    什么是Y组合器? 让我们从编写一个简单的递归阶乘函数开始: ( define ( factorial n ) ( if ( = n 0 ) 1 ( * n (factorial ( - n 1 ))))) 可以用更明确的样式编写: ( define factorial ( lambda ( n ) ( if ( = n ...

    Y Combinator Directory数据集.zip

    《Y Combinator Directory数据集:深度解析与应用探索》 Y Combinator(简称YC)是全球知名的风险投资公司和创业加速器,它孕育了许多成功的科技初创企业。本篇文章将详细探讨“Y Combinator Directory数据集”,...

    yCombinator:从 Hacker News (Y Combinator) 中搜索字符串

    在【压缩包子文件的文件名称列表】中,"yCombinator-master" 很可能是项目的源代码仓库主分支的命名,暗示着这个项目使用Git进行版本控制,而"master"是默认的主分支,包含了项目的主要代码和最新进展。用户可以通过...

    Y Combinator W21 Demo Day (Cloned on 4_29_2021).pdf

    【Y Combinator W21 Demo Day】是一个重要的创业活动,是Y Combinator(YC)在2021年冬季(W21)批次的创业者向投资者、媒体和其他利益相关者展示他们初创企业的平台。Y Combinator是全球知名的风险投资加速器,它为...

    enlight-ycombinator:有关enlight.nyc的Y组合器的文章

    用JavaScript派生Y组合器 什么是Y组合器? 为了了解Y组合器,必须首先了解递归。 这是一个定义。 递归(名词) 参见“递归” 开玩笑! 但是,尽管如此,该定义还是体现了递归的本质:自我参照。 在我们的案例...

    毕业设计MATLAB_COMBINATOR-组合和排列.zip

    标题中的“MATLAB_COMBINATOR-组合和排列.zip”表明这是一个关于MATLAB编程的毕业设计项目,主要聚焦于组合和排列的算法实现。MATLAB是一款强大的数学计算软件,广泛用于科学计算、工程分析以及数据分析等领域。在...

    hackernews-feed:用于news.ycombinator.com的Nextjs提要

    这是一个用引导的项目。 入门 首先,运行开发服务器: npm run dev # or yarn dev 用浏览器打开以查看结果。...部署Next.js应用程序的最简单方法是使用Next.js创建者提供的。 请查看我们的以获取更多详细信息。

    y-combinator-tutorial:Y组合器的简短描述,但很有启发性

    Y组合器:非常简短的解释 以下是我可能想到的Y组合器的最精简的自上而下的解释,根据我的希望,这仍然是可以理解的。 您可能想在深入学习之前进行热身阅读,或者如果还没有完全理解该概念,则可以使用自底向上的方法...

    ycombinatordemo:Y Combinator 演示

    **Y Combinator 演示 - Node.js 应用详解** Y Combinator 是一个在函数式编程语言中广泛使用的高阶函数,尤其在 Lambda 计算模型中扮演着重要角色。它允许递归定义函数而无需显式地引用自身,这在编写某些类型的...

    yclist:ycombinator公司名单和描述

    YC清单由资助的非官方公司贡献帮助保持 YC List 最新! 您可以执行以下一项或多项操作: 直接从浏览器编辑打开包含对公司数据文件进行编辑的提出以建议更改每个公司都以未格式化的文本文件列出。...

    parsingYcomb:Scrapy Spider,可从https解析Ycombinator公司列表

    从Scrapy Spider解析Ycombinator的公司列表,为 如何运行?: 下载scrapy 转到终端并输入“ scrapy startproject y”。 这将创建一个新项目“ y” 在根用户文件夹中找到“ y”文件夹,并在其中找到“ spiders”...

    combinator:组合器是用于应用程序快捷方式的小型javascript库。 组合器的编写考虑了最终用户,简单的实践和简单的语法

    组合器是用于应用程序快捷方式的小型javascript库。 Combinator的编写考虑了最终用户,简单的实践和简单的语法。 ##目录 #### #### #### #### # 配置 设置Combinator非常容易,首先选择所需的Combinator文件,...

    ycomb:全能的Y组合器

    Y组合器Y组合器可用于创建具有递归行为的函数。 // recursive factoriallet fact = n => n <= 1 ? n : n * fact ( n - 1 )// factorial using the Y-combinatorlet fact = Y ( f => n => n <= 1 ? n : n * f ...

    parser-combinator-js:由 G. Hutton 和 E. Meijer 定义的 monadic 解析器组合器的 Javascript 实现

    JavaScript 中的 ... 在我们的上下文中,解析器可以理解为一个x ,它接受一个字符串,比如x ,并返回一个元组列表[(a_1, y_1), ...,(a_n, y_n)] ,其中a_i是之前的一些固定数据类型A和y_i也是字符串,即 type Pa

    y-combinator-notes:定点组合器的注意事项

    y-combinator-notes 这是一组关于定点组合器的笔记,收集自 Viksit Gaur 的《 的参考资料用法只需跟随core.clj的散文。 要查看某些断言是否合理,请cd到项目目录并运行lein test执照根据 Eclipse 公共许可证分发 1.0...

    hacker-news-react-native:对news.ycombinator.com的本机客户端

    黑客新闻React本机 介绍 这是Hacker News的React Native客户端,使用了我编写的GraphQL API。 这个项目的主要目的是自学React Native并测试 。 您可以使用尝试一下

    statistics-combinator:因子组合

    《统计组合库statistics-combinator在Lua中的应用与解析》 在编程领域,尤其是在数据分析、机器学习和概率统计中,因子组合(Combinatorics)是一个重要的概念。它涉及到组合数学,研究有限集合中对象的不同排列和...

    A Parser Combinator library for C.zip

    2. **组合解析器**:使用提供的combinator函数将这些基本规则组合成更复杂的解析逻辑。 3. **执行解析**:使用组合好的解析器对输入数据进行解析,生成解析树或直接处理结果。 4. **处理错误**:如果解析失败,库应...

Global site tag (gtag.js) - Google Analytics