Vectores bidimensionales en Rust

Nota del editor: Esta pregunta es anterior a Rust.0.1 (etiquetado 2013-07-03) y no es sintácticamente código Rust 1.0 válido. Las respuestas todavía pueden contener información valiosa.

¿Alguien sabe cómo crear vectores de dos dimensiones mutables en Rust y pasarlos a funcionar para ser manipulados?

Esto es lo que intenté hasta ahora:

extern crate std;

fn promeni(rec: &[u8]) {
    rec[0][1] = 0x01u8;
}

fn main() {
    let mut rec = ~[[0x00u8,0x00u8],
        [0x00u8,0x00u8]
    ];
    io::println(u8::str(rec[0][1]));
    promeni(rec);
    io::println(u8::str(rec[0][1]));
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta