【Hacker News搬运】383字节的Lambda演算(2022)
-
Title: Lambda Calculus in 383 Bytes (2022)
383字节的Lambda演算(2022)
Text:
Url: https://justine.lol/lambda/
Post by: MrBuddyCasino
Comments:
exikyut: I've been attracted to this - along with 2D cellular automata - a bit like a moth to a flame for some time. I find the little machine visualisations mesmerising, the heavily parenthesized Greek representation charming (they look like standing orders written in an alien language, looking for all the world like space invaders) and the tiny code sizes magical.<p>But I can't quite wrap my mind around the core concepts and internalize them into a mental model. It's too different from the simple world of imperative C or scripting languages I guess I call home. So I'm left watching das blinkenlights from the outside, as my attention span chokes on the layers of computer science incorporated into typical explanations. <i>shrug</i><p>I'd be very interested if anyone knows of an ELI5-style alternate path I could walk to break each of the concepts down one at a time. (I ask because I think this is (currently) the kind of thing I think ChatGPT would struggle to present as effectively as a human.)
exikyut: 我;我和2D细胞自动机一样,有点像飞蛾被火焰吸引了一段时间。我发现小机器的可视化令人着迷,带有浓重括号的希腊语表示很迷人(它们看起来像用外星语言写的常规命令,像太空入侵者一样寻找整个世界),微小的代码大小很神奇<p> 但我可以;我无法完全理解核心概念,并将其内化为心理模型。它;这与命令式C或脚本语言的简单世界太不一样了,我想我称之为家。因此,我;当我的注意力被典型解释中包含的计算机科学层所束缚时,我离开了,从外面看着达斯·布林肯的光芒*<i> 耸耸肩</i>*<p>我;如果有人知道我可以走一条ELI5风格的替代路径来逐一分解每个概念,我会非常感兴趣。(我这么问是因为我认为(目前)ChatGPT很难像人类一样有效地呈现这种东西。)
jart: Author here. If anyone wants to see an example of an awesome program you can run on the 520 byte version of my lambda calculus virtual machine (Blc) then check out <a href="https://github.com/woodrush/lambdalisp">https://github.com/woodrush/lambdalisp</a> If you run the command in that project, it'll download my VM from the blog post, build a 20kb lambda expression you can pipe into it, and BOOM a fully object-oriented LISP REPL will appear in your terminal. It's like magic. For an example expression, try typing (+ 2 3) and hit enter. Then type (let ((a 2) (b 3)) (+ a b)) and hit enter. You need an x86 linux machine to do this right now.
jart: 作者在这里。如果有人想看看一个很棒的程序的例子,你可以在我的520字节版本的lambda演算虚拟机(Blc)上运行,那么请查看<a href=“https:”/;github.com;伍德鲁夫/;lambdalisp</a>如果在该项目中运行该命令,它;我将从博客文章中下载我的虚拟机,构建一个20kb的lambda表达式,你可以将其导入其中,BOOM一个完全面向对象的LISP REPL将出现在你的终端中。它;这就像魔法。对于示例表达式,尝试键入(+2 3)并按enter。然后键入(let((a2)(b3))(+ab))并按enter键。你现在需要一台x86 linux机器来做这件事。
dang: Discussed at the time (but before it shrank):<p><i>Lambda Calculus in 400 Bytes</i> - <a href="https://news.ycombinator.com/item?id=30493713">https://news.ycombinator.com/item?id=30493713</a> - Feb 2022 (63 comments)
dang: 当时讨论过(但在缩减之前):<p><i>400字节的Lambda演算</i>-<a href=“https:/;news.ycombinator.comM;item?id=30493713”>https:/;news.ecombinator.com;项目?id=30493713</a>-2022年2月(63条评论)
Joker_vD: Does anyone have a gentle introduction on binary λ-calculus? I've tried reading other pages on this site but it goes a bit too fast for me understand what the hell is going on with it.
Joker_vD: 有人对二元λ演算有一个温和的介绍吗?我;我试着阅读这个网站上的其他页面,但速度有点太快,我无法理解它到底发生了什么。
memming: "our 521 byte virtual machine is expressive enough to implement itself in just 43 bytes" whaat!
memming: &“;我们的521字节虚拟机具有足够的表达能力,可以在43个字节内实现自己”;哇!