4 releases

0.1.3 Feb 20, 2023
0.1.2 Jan 28, 2022
0.1.1 Jan 25, 2022
0.1.0 Jan 25, 2022

#236 in Programming languages

MIT license

155KB
3.5K SLoC

日本語プログラミング言語「なでしこv3」(Rust実装版)

このプロジェクトは、なでしこ3をプログラミング言語Rustで差異実装するプロジェクトです。 オリジナルの「なでしこ3」はJavaScriptで実装されています。

コンパイルの方法

  • (1) Rustをインストールします。
  • (2) 以下のコマンドを実行します。
    • cargo run

Rustから使う方法

最初に、cargo initを実行してプロジェクトを初期化します。 続いて、Cargo.tomlの[dependencies]にnadesiko3を追記してください。

[dependencies]
nadesiko3 = "0.1" # ←これを追加

そして、main.rsに以下のようなコードを記述します。

use nadesiko3::*;

fn main() {
    // 文字を表示
    let result = eval_str("「こんにちは」と表示");
    println!("{}", result);
    // 計算して表示
    let result = eval_str("1+2×3と表示");
    println!("{}", result);
    // 以下のように記述することもできます
    let result = eval_str("1に2を足して表示");
    println!("{}", result);
}

実装状況

条件分岐の「もし」文や繰り返しの「繰り返し」、関数定義など、簡単な計算ができるようになりました。 なでしこv1/v3のプロジェクトを主に開発しているので、隙間時間に少しずつ開発します。

フィボナッチやFizzBuzzのコードが動くくらいです。

# フィボナッチ
●FIB(Nの)
  もし、N<2ならばNで戻る
  ((N-1)のFIB)+((N-2)のFIB)で戻る。
ここまで。
(25のFIB)を表示。
# FizzBuzz
Nを1から100まで繰り返す
  もし、(N%3=0)かつ(N%5=0)ならば「FizzBuzz」と表示。
  違えば、もし、N%3=0ならば「Fizz」と表示。
  違えば、もし、N%5=0ならば「Buzz」と表示。
  違えば、Nを表示。
ここまで。

No runtime deps