简介
记录像 Raku 这样的大型语言必须平衡几个相互矛盾的目标,例如简洁而全面,迎合具有丰富经验的专业开发人员,同时也可以迎合接触到该语言的新手。
有关快速实践的介绍,有一个简短的注释编程示例。
对于具有其他语言经验的程序员,有许多迁移指南可以将 Raku 的功能与其他语言进行比较和对比。
许多教程涵盖了 Raku 特别具有创新性的几个领域。节标题应该有助于导航剩余的文档。
raku.org 网站上的其他地方列出了许多有用的资源。这些包括文章,书籍,幻灯片演示和视频。
已经发现,Raku 的新手经常会提出问题,这些问题表明了其他编程范例带来的假设。建议首先审查基本主题部分中的以下部分。
签名 - 每个例程(包括子例程和方法)都有签名。理解子或方法的签名中给出的信息提供了一种快速掌握例程的操作和效果的方法。
容器 - 变量,就像计算机语言的名词一样,是存储信息的容器。容器正式名称中的第一个字母,例如
$my-variable
的'$'
,或@an-array-of-things
的'@'
,或%the-score-in-the
的'%'
- 携带有关容器的信息。但是,Raku 比其他语言更抽象,可以存储在容器中。因此,例如,$scalar 容器可以包含实际上是数组的对象。类和角色 - Raku 基本上基于对象,它们根据类和角色进行描述。与某些语言不同,Raku 并没有强制使用面向对象的编程实践,并且可以编写有用的程序,就好像 Raku 纯粹是程序性的。然而,复杂的软件,例如 Raku 的 Rakudo 编译器,通过编写面向对象的惯用法变得更加简单,这就是为什么通过查看类是什么以及角色是什么来更容易理解 Raku 文档。如果不了解类和角色,就很难理解类型,文档的整个部分都是专门用的。
要避免的陷阱 - 一些常见的假设导致代码无法像程序员想要的那样工作。本节标识了一些。当某些事情没有成功时,值得回顾一下。