1. Quine Relay: 一个由128种语言构成的程序员版贪吃蛇
https://github.com/mame/quine-relay
@陈锡亮:Quine 是一种很神奇的程序,可以自己把自己的源代码打印出来,就像一只追逐自己尾巴的贪吃蛇,永无止境的前进但没有终点。
普通的 Quine 对于无聊的程序员来说这已经没有任何挑战性了,于是又有了多级 Quine,比如一个 Ruby 程序能打印出 Python 程序,然后能打印出最开始的 Ruby 程序。
而 mame/quine-relay 这个项目实现了 128 个不同语言的 Quine。你问这代码写了多久?当然是 ∞ 。
2. IU Compiler Course
https://iu.instructure.com/courses/1735985
@肖雪洁:”很多开发者都曾经或多或少的想趟一趟 compiler 这个坑,但是个人感觉,compiler 是最容易弃坑的 topic。其中很重要的原因,就是通常的教材,比如龙书,都更偏重于编译器前端的技术,对于后端技术,要么一笔带过,要么等看到这里时,兴趣已经所剩无几了。但是在现代编译器的实际开发中,可以讲绝大部分的工作偏偏都在后端的设计上。这样就使得我们花了很大精力学习的编译技术,最后只能流于表面,并没有太大的用处。
让事情更糟的是,经典的教材,比如龙书这种,更多的涉及的是传统语言,比如 C 的编译过程。这与我们大多数工程师现在每天日常会用的高阶语言有较大差距。结果就是我们花了很大的精力学习了编译原理,仍然不会处理复杂的语法结构。
这门课则采取了另辟蹊径的一种方式:我们直接用一门近乎没有语法的语言 Scheme,来直接学习 Scheme 是如何直接编译到 x86 机器码的,在其中会涉及大量的现代语言结构,比如 GC,比如高阶函数是怎么处理的,我个人觉得这比传统的编译原理学习方式,会有更大的收获。
3. stackshare.io
https://stackshare.io/
@Frozen:常用工具集
Web3极客日报是为Web3时代的极客们准备的一份日报,它是由一群极客们推荐他们认为有价值的内容并附上一段推荐语,最后通过Rebase的成员整理编辑。
如果你是一名极客,你有好的工具、好的开源项目、好的文章和教程等想要分享给大家,请推荐给我们!
如果你也想参与到Web3极客日报的建设中,请在后台留下你的微信号和简单的介绍,我们(一群闲散的极客)会尽快和你联系。
网站:http://ec2-13-231-107-232.ap-northeast-1.compute.amazonaws.com
公众号:rebase_network