GooseSamples project 02 · static site

Project 02 / sample atlas

Goose サンプル探訪

公式サンプル 31 本を、カテゴリ・難易度・必要な環境で辿り、 解説とソースコードを同じ画面で読むための静的サイトです。 ビルドもサーバーも不要で、GitHub Pages にそのまま公開できます。

31Samples
8Categories
7,420Lines
0Build steps

探訪ビュー

左にカテゴリとフィルタ、中央にカード一覧、右に解説とソース。カードを選ぶと、要約・学べること・実行コマンド・行番号付きのコードが並びます。 検索、読了チェック、URL での共有にも対応しています。

Goose サンプル探訪 · 31 samples · annotated 0 / 31 読了

Categories

  • 基礎6
  • アルゴリズム6
  • データ構造4
  • 言語処理3
  • グラフィックス4
  • 実践3
  • 応用3
  • ゲーム2
18言語処理中級313 行 JSON パーサー 可変モード enum のノードを 1 つのプールに置き、4 バイトの相対リンクで辿る。
13データ構造中級113 行 双方向連結リスト reusable プールと in pool リンクで、アロケータなしに O(1) の挿入・削除。
23グラフィックス発展101 行 マンデルブロ集合(並列) 型付きキューでジョブを配るワーカープール。行を並列に描画する。
30ゲーム発展1,640 行 ミニ・マインクラフト アセットなしで地形・テクスチャ・空・フォントまでコードで生成する。

8 つのカテゴリ

上流の章立てを、探訪しやすい 8 分類に整理しました。カテゴリを選ぶと、その範囲だけに絞り込んだ一覧が開きます。

読む順

番号は上流の推奨順です。最初の 6 本が以降の前提になるので、ここだけは順番に読むのが近道です。

  1. 入門 — 01–06

    言語ツアー、メモリモデル、文字列、エラー、代数的データ型、関数。まずはこの 6 本。

  2. 中級 — 07–19・24

    古典アルゴリズム、データ構造、パーサーと VM、C 連携。Goose のリンクとプールに慣れる範囲。

  3. 発展 — 20–23・25–31

    グラフィックス、シリアライズ、gfx / physics / ui、そして 2 本のゲーム。

必要な環境

ほとんどは標準ライブラリだけで動きます。gfx / physics / ui / audio を使うサンプルは、対応パッケージ入りのコンパイラが必要です。

バッジ必要なもの該当
標準のみGoose の標準ライブラリ24 本(01–22, 25, 26)
C ヘッダ--include call_c.h24
gfxgfx パッケージ入りのコンパイラ27, 28, 29, 30, 31
physicsphysics パッケージ入りのコンパイラ28
uiui パッケージ入りのコンパイラ29
audio音声デバイス(失敗時は無音)31
WAD同梱の Freedoom WAD31
入力データ標準入力から式を渡す17
スレッドハードウェアスレッド数に応じてワーカーを起動23

データと出典

収録しているコードは aardappel/goose の samples/ を、コミット 64d62fc(2026-10-26)時点で無改変のまま収録しています。 ライセンスは Apache-2.0 です。帰属は THIRD_PARTY_LICENSES.md、 ライセンス全文は LICENSE-APACHE-2.0.txt に置いています。

各サンプルの日本語要約・タグ・難易度・必要環境は、このプロジェクトによる整理です。 原文の解説コメントは各ファイルの先頭にそのまま残しています。

現在の制限

31 本を、読む順に。

カテゴリから絞り込むのもよし、検索でつまみ食いするのもよし。まずは 01 の言語ツアーから始めましょう。

探訪ビューへ