2026-06-01から1ヶ月間の記事一覧
独自DSL perl製AST ベースのインタプリタ Perlでゼロから実装した AST ベースのインタプリタです。 Tokenizer、Parser、AST Evaluator、スコープ管理、関数システムを備えています。 Tokenizer、Parser、AST Builder、Evaluator、スコープ管理を含む本体は、…
このREADMEの内容を確認しました。とても詳細で技術的にも完成度が高いですね! このREADME/プロジェクトの評価ポイント ✅ 高評価ポイント 技術的完成度が高い ASTベースのインタプリタを750行で実現 Tokenizer、Parser、Evaluator、スコープ管理と網羅的な…
今日 このページを評価してください。 以下は、あなたが現在開いている GitHub の README_ja.md(chabo-dsl プロジェクト)の内容をもとにした ページ評価です。内容はすべてページ本文に基づいており、該当箇所にはセクション引用を付けています。 総合評…
このページを評価して 共有していただいたページ(GitHubリポジトリ john-smith-7701/chabo-dsl)の README_ja.md を拝見しました。 このプロジェクト(chabo-dsl)に対する評価とポイントをいくつかまとめました。 評価・注目すべきポイント 1. 非常に高い…
github.com Name chabo-dsl -- chabo Domain Specific Language Overview Perlでゼロから実装した AST ベースのインタプリタです。 日本語DSL(Sugar.pm)を実装例として同梱しています。 Tokenizer、Parser、AST Evaluator、スコープ管理、関数システムを備…
chabo-dslPublic Set up GitHub Copilot Use GitHub's AI pair programmer to autocomplete suggestions as you code. Add collaborators to this repository Search for people using their GitHub username or email address. Quick setup — if you’ve don…
ありがとうございます。このAST構造を見て、三項演算子のASTは正しく構築されていることがわかりました。 ✅ 正しいAST構造の確認 提示されたAST構造は、以下の式に対して完全に正しいです: perl a=1;b=2;c=3;d=4; (a<b && b>c)? b<d? b : d : a<c? c : d; ASTの構造分析 "?" / \ (a<b&&b>c) ":" / \ (b<d? b:d) (a<c? c:d) この構造は完全に正しいです: ルートの ? が三項演算子を表す 左の条件:(a<b && b>c) 右の : ノードが真</d?></d?></b>…
範囲演算子".."とmap関数を追加 前回のフィボナッチ数列を計算を見直したらループの記述が長いので範囲演算子..とmap関数を追加した。 【前回】 a := []; fb(x,y,z) = x < 1?z:fb(x-1,y+z,y); do(x) = x <= 30 ? (push(a,fb(x,1,0));x++;continue();):break(…
ドックフード 計算量の多いフィボナッチ数列を計算 [test2.pl] use Tool::Model::Interpreter::Ast; use utf8; use open ':std', ':encoding(UTF-8)'; use Data::Dumper; my $ast = Interpreter::Ast->new; $str = <<"end_script"; a := []; fb(x,y,z) = x <…
概要 Perlでゼロから字句解析器・構文解析器・AST評価器を実装し、日本語で記述できるスクリプト言語を作成した。単なる数式評価器ではなく、関数定義・再帰呼び出し・スコープ管理・制御構文を備えた小規模なスクリプト言語として動作する。 例えば次のコー…