突然新しいプログラミング言語に入門したくなることもある。自分としてはスクリプト言語はRubyをメインに使っているのだけれども(最近Rubyistとしては隠れすぎていてRubyを使っておらず、シェルスクリプトで何とかしようとする傾向があるが)、最近徐々に知名度を上げつつあるプログラミング言語Rustに入門してみようかと思い、日本語の資料をいろいろ探していた。
githubにいろんな文書がアップロードされている。ありがたい。
このへんから入門してみようかと思う。とりあえず、やってみた成果はなるべく日記にアップロードしてみようと思うので、ここから数日の日記はRustのゴミみたいな備忘録になる事こと間違いなし。
とりあえず、Cargoというシステムはなかなか便利だなと思った。ついでに、RISC-Vにも対応させるべく移植にトライしてみるのも、面白いのかもしれない。
あと、Emacsなどの環境構築は、このあたりを参考にした。MacじゃなくてUbuntu on VirtualBoxだけど。
とりあえず今日やったのは第3章まで。
extern crate rand; use std::io; use std::cmp::Ordering; use rand::Rng; fn main() { println!("Guess the number!"); let secret_number = rand::thread_rng().gen_range(1, 101); loop { println!("Please input your guess."); let mut guess = String::new(); io::stdin().read_line(&mut guess) .expect ("Failed to read line"); let guess: u32 = match guess.trim().parse() { Ok(num) => num, Err(_) => continue, }; println!("You guessed: {}", guess); match guess.cmp(&secret_number) { Ordering::Less => println!("Too small!"), Ordering::Greater => println!("Too big!"), Ordering::Equal => { println!("You win!"); break; } } } }
プログラミング言語Rust via kwout