Talkshelf
EN
返回视频列表

Y Not:探索函数式编程与递归

Confreaks

53:21 · 2012

学习资料

播放器下方提供英文笔记、测验、闪卡和 PPT 大纲。

PPT 资料为文字大纲,尚非完整演示文稿。

视频概览

Jim Weirich 在 RubyConf 2012 的演讲中,用 Ruby lambda 现场编程,逐步推导 Y 组合子,从基本原理建立对函数式编程与 lambda 演算的理解。

HN 讨论的原因

HN 多次将它推荐为出色且有趣的编程演讲,认为它能让人理解 Y 组合子,即使不使用 Ruby 也值得观看。

观看前准备

需要能读懂函数和简单递归。熟悉 Ruby 语法会有帮助;核心目标是理解接收函数并返回函数的高阶函数。

学习建议

每次 lambda 变换时暂停,用一个小输入手算过程。把原来的递归定义与变化后的代码放在一起,解释哪些行为始终保持一致。

函数式编程 · 可计算性与复杂度理论 · Python、Ruby 与脚本语言

HN 评论

20 条收录评论

最新优先

sva_强烈推荐

所在讨论: Baking the Y Combinator from Scratch

If anyone wants this in a humorous 1 hour format, watch the legendary Jim Weirich (rip) explain it here: [VIDEO] Don't be discouraged that it is in Ruby as the concepts are completely general. Great watch even though I never coded a line of Ruby.

jiripospisil推荐

所在讨论: Ask HN: What piece of code/codebase blew your mind when you saw it?

Well, .NET's garbage collector certainly springs to mind. Not exactly in a good way. You know you have something special on your hands when GitHub refuses to show you a highlighted version of a hand written C++ file ( [LINK] ). Other than that, I remember my mind was blown a few times while watching Jim Weirich's presentation on functional programming all those years ago ( [VIDEO] ).

已显示 5 / 20 条评论