替换相似性

2020-06-09 07:29:23

在我上一篇文章中,我说我博客帖子的点击量比去年上升了20%。我查的原因显然是虚荣心。我那天查看的原因是一篇关于“铁锈”越来越受欢迎的文章。作为一种精神锻炼,我把程序员给出的不同理由变成了一份清单,这些程序员抛弃了他们使用的语言。

[X]真正的新功能[X]超价格最低原则(经常提到)[]无后顾之忧[x]语言设计人员听取社区的意见[x]完整的工具(经常提到)[X]库/模块的中央资源库[]理想化代码快速[X]FFI接口[x]许多平台支持[X]内存安全/类型安全/数据竞争安全[]快速/低内存占用(经常提到)[X]向后兼容自身[]正确的错误处理[]不会强制OOP。

这些项目取自文章,适用于生锈。扁虱是我认为Raku擅长的地方。大写的X对我们来说是一个很强的对手。这两种语言的领域大不相同。我强烈怀疑是否有人愿意为Raku的微控制器编写代码。然而,程序员关心的内容形成了相当大的重叠。

“铁锈”文章的另一个方面是该问题参与者的大意。所有用户都来自不同的语言,并在痛苦的驱使下到达更安全的地方。这意味着所有人都在用Rust替换$language,并且喜欢这样。Rust的成功在于把事情做对,就像其他语言做错了事情一样。这几乎就是Perl6在2000年的目标。我们也可以在那个方框里打勾。

Rust的核心团队看到了一个非常强大的开放社区,但为初学者提供的资源很少。对于我们来说,同样的情况也是如此。可能是因为写初学者指南真的很难吧。我们有同样的弱点。给Raku的书已经很多了。我从来没有真正喜欢过这个主意。我能理解为什么一个有学术背景的投稿人会想要写一本书。如果你不这样做,你就不是一个真正的学者。我也能理解为什么学者们在付费墙方面没有真正的问题。是的,书籍是收费墙。我以前也经常爬那堵墙。在我身后的书架上有Stroustrup的C++编程语言。然而,我怀疑付费墙能否为我们带来更多用户。初学者指南必须在线,只需从raku.org点击一下即可访问。

也有不同之处。Rust原本打算取代C/C++,成为Mozilla开发安全关键软件的工具。当Raku发布的时候,我们真的不想让它取代任何东西。这并不是因为有大量的动态语言需要迅速替换。这里有人喜欢PHP吗?想知道因为一个模块被拉出来,Node.js的另一个例子吗?不,我们不想更换东西,因为我们想变得友善。市场营销的全部意义就是对你想要接触的人友好,对你的竞争对手恶毒。而且那些铁锈人其实并不擅长营销。当我读到铁锈的时候,我会想到旧的油桶,腐烂的机器和另一个不受欢迎的洗手理由。命名Seam对程序员来说并不重要。

2018年初,我做了一个非常简短的励志演讲。我仍然坚持我当时写的东西。然而,我对我们取得的成功并不满意。也许是时候停止从别人的错误中学习了,看看快速发展的语言社区在做什么是正确的。