Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Hello, World!

现在你已经安装了 X 语言,让我们编写第一个程序!按照传统,我们将从 “Hello, World!” 开始。

创建项目目录

首先,让我们创建一个目录来存放 X 语言代码。X 语言不关心你的代码在哪里,但对于本书的练习,我们建议在你的主目录下创建一个 x-projects 目录:

mkdir ~/x-projects
cd ~/x-projects

编写并运行 X 程序

接下来,创建一个名为 hello.x 的文件:

touch hello.x

使用你喜欢的文本编辑器打开这个文件,并输入以下代码:

// Hello, World!
println("Hello, World!")

保存文件,然后在终端中运行以下命令:

x run hello.x

你应该会看到输出:

Hello, World!

恭喜!你已经成功编写并运行了你的第一个 X 程序!

分析这个程序

让我们逐行看看这个程序做了什么:

// Hello, World!

这是一行注释。X 语言使用 // 来表示单行注释。注释会被编译器忽略,它们是为了给人类读者看的。

println("Hello, World!")

这一行调用了内置函数 println,它将括号内的内容输出到标准输出并换行。这里我们传递了字符串字面量 "Hello, World!"

注意,在 X 语言中,语句不需要分号结尾(虽然如果你写了分号也不会报错)。

main 函数(可选)

在上面的例子中,我们直接编写了代码,没有使用 main 函数。这是 X 语言的一个便利特性:main 函数不是必须的。你可以像 Swift 一样,直接在文件顶层编写代码。

不过,对于更复杂的程序,或者当你需要更好地控制程序入口时,你仍然可以使用 main 函数:

// Hello, World! - 使用 main 函数的版本
function main() {
  println("Hello, World!")
}

这个版本与之前的版本功能完全相同。选择哪种方式取决于你的个人偏好和程序的复杂度。

编译与运行

当你运行 x run hello.x 时,X 工具链会:

  1. 解析 hello.x 文件
  2. 检查语法和类型
  3. 通过解释器执行程序

如果你想查看程序编译后的中间表示,可以使用:

x compile hello.x --emit ast

这会输出程序的抽象语法树(AST)。

练习

  1. 尝试修改 hello.x 程序,让它打印 “Hello, X!” 而不是 “Hello, World!”。
  2. 尝试添加另一个 print 调用,让程序打印两行内容。
  3. 尝试创建两个版本的程序:一个使用 main 函数,一个不使用,验证它们的行为是相同的。

下一步

现在你已经掌握了基础,让我们在下一节中编写一个更复杂的程序——一个猜数字游戏!