Wat Freeness

楽土

遗憾的是,我不能参加云端会议,因为我把翅膀借给了一个天使,而那个吸盘没有把翅膀带回来。但没有什么–哪怕是瘟疫–可以阻止我写一篇博文。

会议往往是一个反思和扔杯子的时间。我的目标是通过这篇文章做到这一点。我在 Raku 上的大部分工作都投入到了文档和这个博客中(请注意递归的反思)。这是一个非常自私的行为。如果没有一个没有漏洞的文档,学习一门语言是相当棘手的。博客帮我做了很多堵洞所需的思考。它是一个很好的沉思工具,对新的但并不年轻的语言产生认识。我可以强烈建议用博客来实现这两点。相对于去年,这个特定博客的点击率上升了63%左右。如果我们能保持这种增长,只需要54年,对 Raku 的兴趣就会超过地球上的人口。

在我的上一篇文章中,我努力理解没有bub的本质。睡了一觉才想明白原因。原因似乎是我没有一个心理范畴把那个东西它。让我高兴的是瓦特变成了文化。在编程的语境中,瓦特不是未定义的行为。它不是对语法或语义的违反。它是语言实现的不同子系统之间出现的互动,它违反了最小惊喜原则。LTA 是 wat 的一个子集。让我们来点代码。

class C { has $.a = s; }
sub s {}
# OUTPUT: ===SORRY!===
#         Null regex not allowed
#         ------> class C { has $.a = s; ⏏}; sub s {}
#         Couldn't find terminator ;
#         ------> class C { has $.a = s; ⏏}; sub s {}
#             expecting any of:
#                 ;

瓦特了。

如果我们重新命名 sub,我们可以使这个工作。

class C { has $.a = a; };
sub a { 42 }
say C.new.a;
# OUTPUT: 42

这里发生的情况是 Raku 语法在寻找 s///,而不是在编译单元的最后记下检查是否存在一个叫 s 的 sub。一开始我还以为是 LTA。所以 wat 真的可以欺骗人。因此,任何语言实现者都应该尽可能地避免使用它们。在 Raku 中,我们的目标就是这样做。

我们会告诉新人吗?或者换个说法,这个问题。我们在营销方面还很烂吗?让我们来看看 raku.org

Raku 编程语言 嗨,我叫 Camelia。我是 Raku 的代言人。Raku 意在发扬 Perl 社区的崇高理想。Raku 是由一群热心的志愿者开发的,并且还在继续开发中。你也可以提供帮助。唯一的要求是你要懂得如何对各种人(和蝴蝶)好。去 #raku(irc.freenode.net),有人会很乐意帮助你开始。

这是令人震惊的糟糕。标题不适合它下面的文字。它解释了 Camelia 而不是 Raku 是什么。虽说 Camelia 虽然挺漂亮,但急需解释。这段话的作者显然是一个语言实现者在向其他语言实现者说话。没有点名 Perl 社区的崇高理想,也没有点名语言实现者的崇高理想。捕鱼送50满100可提现是相当重要的,只是不在首页对编程语言说。有了这个头版,我们设法在一个对语言(理所当然)感兴趣的人读到的第一行就错过了受众。这需要改变。

好的营销能给所有相关方带来好处。我们需要找出我们想让世界了解 Raku 的内容,并把它放在那一页上。每周的新闻都要做很多工作。非常感谢 lizmat 和她偶尔的替代者。然而,为什么这些非常有用的内容不在 raku.org 上呢?我们链接到 irc-logs。我们是血腥的编码者,我们有一种非常好的语言和一个非常好的 Web 框架。我们是否用它来为一个我们希望发展的社区提供一个中心来获取他们所需要的东西?我认为我们应该这样做。

Raku 的目的是作为社区和社区的语言重写。该语言及其编译器已经处于一个很好的位置。如果我们想让它成为所有动态语言的替代品,我们需要在市场部门提高我们的游戏水平。改变语言的名称是这项工作中最容易的部分。

我希望你,这个博客的好心读者,能从我的闲言碎语中得到一些好处。也许还可以带一些去参加会议。其实,如果你在参加陌生时代的会议时看到这篇博文,我就当是抱了个大腿。

by gfldex

comments powered by Disqus