特集記事 JavaScriptでつくるSchemeインタプリタの基礎の基礎 JavaScriptによるSchemeの実装 zick[著] 2006/12/12 00:00 JavaScript ポスト 目次 Page 1 はじめに 対象読者 必要な環境 概要 作成するインタプリタについて Schemeのプログラム インタプリタの概要 オブジェクト インタプリタが扱うデータ オブジェクトの準備 対リストとクォート Page 2 入出力 入力の変換 出力への変換 式の評価 評価の規則 環境の設計 評価器の実装 組み込み関数 組み込み関数の設計 Applyの実装 用意すべき組み込み関数 Page 3 関数定義 Scheme側の関数 begin EXPRオブジェクト lambda EXPRの呼び出し 環境の操作 条件分岐 サンプル 階乗 クロージャ まとめ 参考文献 会員登録無料すると、続きをお読みいただけます 新規会員登録無料のご案内 ・全ての過去記事が閲覧できます ・会員限定メルマガを受信できます ・翔泳社の本が買える!500円分のポイントをプレゼント メールバックナンバー 新規会員登録無料 ログイン Page 1 はじめに 対象読者 必要な環境 概要 作成するインタプリタについて Schemeのプログラム インタプリタの概要 オブジェクト インタプリタが扱うデータ オブジェクトの準備 対リストとクォート Page 2 入出力 入力の変換 出力への変換 式の評価 評価の規則 環境の設計 評価器の実装 組み込み関数 組み込み関数の設計 Applyの実装 用意すべき組み込み関数 Page 3 関数定義 Scheme側の関数 begin EXPRオブジェクト lambda EXPRの呼び出し 環境の操作 条件分岐 サンプル 階乗 クロージャ まとめ 参考文献 次のページ関数定義 1 2 3 PREV NEXT この記事は参考になりましたか? 0参考になった 印刷用を表示 ポスト 特集記事連載記事一覧 【随時更新・まとめ読み】開発者のための「AWS re:Invent 2024」関連記事 開発者のための「WWDC 2024」関連発表まとめ LeSSやSAFeなど、大規模アジャイルにおけるソフトウェア品質の課題とは? もっと読む この記事の著者 zick(zick) 授業をサボってプログラミング。そんな駄目大学生。 ※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です この著者の最近の執筆記事 この記事は参考になりましたか? 0 参考になった この記事をシェア ポスト シェア CodeZine(コードジン) codezine.jp https://codezine.jp/static/common/images/czlogo4fb_ogp.png https://codezine.jp/article/detail/739 2008/08/26 13:31 Special Contents AD キャリアインタビュー AD おすすめ アクセスランキング 1 GitHub CopilotがClaude Opus 4.1、GPT-5、GPT-5-Codexの非推奨を発表 2 ITエンジニア本大賞 2026の最終プレゼンをレポート 栄冠に輝いた著者が語る本の魅力 3 VSCodeでPHP開発環境を構築しよう 4 GitHub、Markdownで目標を記述することでタスクを自動実行する「Agentic Workflows」公開 5 Notionが業務自動化機能「カスタムエージェント」を発表、5月3日まで無料提供 6 「REPL」 ~マンガでプログラミング用語解説 7 Google、Geminiアプリで画像生成モデル「Nano Banana 2」提供開始 NEW 8 【速報】ITエンジニア本大賞 2026、技術書部門とビジネス書部門の大賞が決定! 9 GitHub Copilotで「GPT-5.3-Codex」が一般提供を開始 NEW 10 Microsoft、「Microsoft Agent Framework」のリリース候補版を発表 NEW アクセスランキング 今日 月間 1 GitHub CopilotがClaude Opus 4.1、GPT-5、GPT-5-Codexの非推奨を発表 2 ITエンジニア本大賞 2026の最終プレゼンをレポート 栄冠に輝いた著者が語る本の魅力 3 VSCodeでPHP開発環境を構築しよう 4 GitHub、Markdownで目標を記述することでタスクを自動実行する「Agentic Workflows」公開 5 Notionが業務自動化機能「カスタムエージェント」を発表、5月3日まで無料提供 6 「REPL」 ~マンガでプログラミング用語解説 7 Google、Geminiアプリで画像生成モデル「Nano Banana 2」提供開始 NEW 8 【速報】ITエンジニア本大賞 2026、技術書部門とビジネス書部門の大賞が決定! 9 GitHub Copilotで「GPT-5.3-Codex」が一般提供を開始 NEW 10 Microsoft、「Microsoft Agent Framework」のリリース候補版を発表 NEW 1 GitHub CopilotがClaude Opus 4.1、GPT-5、GPT-5-Codexの非推奨を発表 2 【速報】ITエンジニア本大賞 2026、技術書部門とビジネス書部門の大賞が決定! 3 「LTSとSTS」 ~マンガでプログラミング用語解説 4 GitHub、Markdownで目標を記述することでタスクを自動実行する「Agentic Workflows」公開 5 「否定された」と感じさせないコードレビューの作法。チームを育てるテキストコミュニケーションとは? 6 Claude Skillsとは? AIエージェント開発における新たなベストプラクティスをやさしく解説 7 「AIにコードを書かせる」だけじゃない!「AIネイティブ開発」へ移行するためのマインドセットと2つの実践手法 8 C++の新機能を理解する──静的なoperator()/operator[]と多次元対応operator[]など言語仕様の強化 9 Apple、2026年4月からiOSアプリの新SDK対応を必須化 10 最新バージョン.NET 10/Visual Studio 2026の登場が、開発者にいかなる価値をもたらすか──「ECHO 2025」開催 イベント CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。 新規会員登録無料のご案内 ・全ての過去記事が閲覧できます ・会員限定メルマガを受信できます メールバックナンバー 新規会員登録無料 ログイン アクセスランキング 1 GitHub CopilotがClaude Opus 4.1、GPT-5、GPT-5-Codexの非推奨を発表 2 ITエンジニア本大賞 2026の最終プレゼンをレポート 栄冠に輝いた著者が語る本の魅力 3 VSCodeでPHP開発環境を構築しよう 4 GitHub、Markdownで目標を記述することでタスクを自動実行する「Agentic Workflows」公開 5 Notionが業務自動化機能「カスタムエージェント」を発表、5月3日まで無料提供 6 「REPL」 ~マンガでプログラミング用語解説 7 Google、Geminiアプリで画像生成モデル「Nano Banana 2」提供開始 NEW 8 【速報】ITエンジニア本大賞 2026、技術書部門とビジネス書部門の大賞が決定! 9 GitHub Copilotで「GPT-5.3-Codex」が一般提供を開始 NEW 10 Microsoft、「Microsoft Agent Framework」のリリース候補版を発表 NEW アクセスランキング 今日 月間 1 GitHub CopilotがClaude Opus 4.1、GPT-5、GPT-5-Codexの非推奨を発表 2 ITエンジニア本大賞 2026の最終プレゼンをレポート 栄冠に輝いた著者が語る本の魅力 3 VSCodeでPHP開発環境を構築しよう 4 GitHub、Markdownで目標を記述することでタスクを自動実行する「Agentic Workflows」公開 5 Notionが業務自動化機能「カスタムエージェント」を発表、5月3日まで無料提供 6 「REPL」 ~マンガでプログラミング用語解説 7 Google、Geminiアプリで画像生成モデル「Nano Banana 2」提供開始 NEW 8 【速報】ITエンジニア本大賞 2026、技術書部門とビジネス書部門の大賞が決定! 9 GitHub Copilotで「GPT-5.3-Codex」が一般提供を開始 NEW 10 Microsoft、「Microsoft Agent Framework」のリリース候補版を発表 NEW 1 GitHub CopilotがClaude Opus 4.1、GPT-5、GPT-5-Codexの非推奨を発表 2 【速報】ITエンジニア本大賞 2026、技術書部門とビジネス書部門の大賞が決定! 3 「LTSとSTS」 ~マンガでプログラミング用語解説 4 GitHub、Markdownで目標を記述することでタスクを自動実行する「Agentic Workflows」公開 5 「否定された」と感じさせないコードレビューの作法。チームを育てるテキストコミュニケーションとは? 6 Claude Skillsとは? AIエージェント開発における新たなベストプラクティスをやさしく解説 7 「AIにコードを書かせる」だけじゃない!「AIネイティブ開発」へ移行するためのマインドセットと2つの実践手法 8 C++の新機能を理解する──静的なoperator()/operator[]と多次元対応operator[]など言語仕様の強化 9 Apple、2026年4月からiOSアプリの新SDK対応を必須化 10 最新バージョン.NET 10/Visual Studio 2026の登場が、開発者にいかなる価値をもたらすか──「ECHO 2025」開催