rust/doc/tutorial/setup.md
2012-01-16 12:44:24 +01:00

56 lines
1.8 KiB
Markdown

# Getting started
## Installation
FIXME Fill this in when the installation package is finished.
## Compiling your first program
Rust program files are, by convention, given the extension `.rs`. Say
we have a file `hello.rs` containing this program:
use std;
fn main(args: [str]) {
std::io::println("hello world from '" + args[0] + "'!");
}
If the Rust compiler was installed successfully, running `rustc
hello.rs` will produce a binary called `hello` (or `hello.exe`).
If you modify the program to make it invalid (for example, remove the
`use std` line), and then compile it, you'll see an error message like
this:
## notrust
hello.rs:2:4: 2:20 error: unresolved modulename: std
hello.rs:2 std::io::println("hello world!");
^~~~~~~~~~~~~~~~
The Rust compiler tries to provide useful information when it runs
into an error.
## Anatomy of a Rust program
In its simplest form, a Rust program is simply a `.rs` file with some
types and functions defined in it. If it has a `main` function, it can
be compiled to an executable. Rust does not allow code that's not a
declaration to appear at the top level of the file—all statements must
live inside a function.
Rust programs can also be compiled as libraries, and included in other
programs. The `use std` directive that appears at the top of a lot of
examples imports the [standard library][std]. This is described in more
detail [later on](mod.html).
[std]: http://doc.rust-lang.org/doc/std/index/General.html
## Editing Rust code
There are Vim highlighting and indentation scrips in the Rust source
distribution under `src/etc/vim/`, and an emacs mode under
`src/etc/emacs/`.
[rust-mode]: https://github.com/marijnh/rust-mode
Other editors are not provided for yet. If you end up writing a Rust
mode for your favorite editor, let us know so that we can link to it.