2024-12-22

「DNCL3 → AST → JavaScript → output」
src on GitHub (ast_ver branch)
DNCL3の実装をインタプリタ式からASTを使うものに更新。DNCL3のプログラムを、パース(字句解析&構文解析)、AST(構文木)を生成、一旦デバッグ用にJavaScriptへ戻したものの表示に加え、ASTを辿った実行結果を一番右に表示します。BMI計算と判定ができます!式の評価をJavaScriptのパーサーに頼って横着したので、DNCL3固有の演算子に未対応です。

下記のようなコードが実行できます。(&&はandへ、||はorに変更予定)

height = 176 weight = 64 height_m = height / 100 bmi = weight / (height_m * height_m) print "BMIは", bmi if bmi < 18.5 { print "低体重" } if bmi >= 18.5 && bmi < 25.0 { print "普通体重" } if bmi >= 25.0 && bmi < 30.0 { print "肥満(1度)" } if bmi >= 30.0 && bmi < 35.0 { print "肥満(2度)" } if bmi >= 35.0 && bmi < 40.0 { print "肥満(3度)" } if bmi >= 40.0 { print "肥満(4度)" }


「code4fukui/DNCL3 at ast_ver」

ast_ver ブランチで実装を進めます。共通テスト用プログラミング言語を目指す「DNCL3」協力者募集中。うれしいことに、神山まるごと高専の2期生が参加してくれてます!

links
- オープンソースの新プログラミング言語、共通テスト用プログラム表記「DNCL3」を実装と共に提案

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS