github-trend-summarizer

このリポジトリは何?

1969年、人類初の月面着陸を成功させたアポロ11号に搭載されたApollo Guidance Computer (AGC) のオリジナルソースコードを、MITミュージアム所蔵の紙の印刷物からデジタル化して公開したリポジトリ。以下の2つのプログラムが収録されている。

モジュール ディレクトリ 役割 ファイル数
Comanche055 /Comanche055/ 司令船 (CM) の誘導制御 86 .agc
Luminary099 /Luminary099/ 月着陸船 (LM) の誘導制御 91 .agc

ソースコードはAGC独自のアセンブリ言語で書かれており、航法計算、姿勢制御、月面着陸誘導(THE_LUNAR_LANDING.agc)、エンジン点火制御(BURN_BABY_BURN--MASTER_IGNITION_ROUTINE.agc)、アラーム処理など、宇宙船の自律制御に必要なすべてのロジックが含まれる。ライセンスはパブリックドメイン

何が嬉しいのか? ― 既存手段との比較

観点 従来の手段 このリポジトリ
閲覧性 MITミュージアムのスキャン画像(TIFF/PDF)を1ページずつ目視 Git管理されたテキストファイルとして全文検索・差分比較が可能
正確性 個人サイトや書籍での断片的引用 原本スキャンと1行単位で照合する校正プロセスが確立されており、コメント内の誤字すら原本通りに保持
協業 Virtual AGC プロジェクト(ibiblio.org)にソースはあるが、貢献の敷居が高い GitHub の Issue / PR ワークフローで誰でも校正に参加可能。29言語に翻訳済みの README
教育的価値 宇宙開発の技術資料は専門家向けが多い MAIN.agc をエントリーポイントに、機能モジュール単位で読み進められる構造。エディタ用シンタックスハイライト(VS Code, Vim 等)も提供

要するに、「人類史上最も重要なソフトウェアの一つを、現代の開発者が読める形で保存し、誰でもアクセスできるようにした」 ことが最大の価値である。

使うときの流れ

1. ソースコードを読む(主な用途)

git clone https://github.com/chrislgarry/Apollo-11.git

2. アセンブル・実行する場合

このリポジトリ自体にはビルドシステムは含まれない。実際にアセンブル・エミュレータ上で実行するには:

  1. Virtual AGC をチェックアウトする
  2. yaYUL アセンブラでソースコードをアセンブルする
  3. Virtual AGC エミュレータ上で実行する

3. 校正・貢献する場合

  1. 原本スキャン画像とソースコードを比較する
  2. 不一致を発見したら Issue を立てるか、PR を作成する
  3. CONTRIBUTING.md のルール(コメントの誤字も原本通りに保持、タブ幅8、末尾空白の除去など)に従う