0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

forthAdvent Calendar 2024

Day 1

GNU gforth 超初心者が説明を試みる 〜実行環境、参照先〜

Posted at

はじめに

GNU gforth 超初心者です。右も左も分かりませんが GNU gforth とはどんなものか、 また古典的な FORTH から何が拡張され何が変わってないのか、 そんな感じでいきたいと思います。

実行環境

プログラミング言語の利点の一つは実際に手元で動かして試してみれることです。
なにはともあれ手元に動くブツが無いといけません。

Docker版

現在、 割と新し目のをもっともお手軽に動かせそうなのがDocker版です。
2024年12月20日時点では Gforth 0.7.9_20241009 で、 最新より2ヶ月遅れぐらい?

Docker版についてはこちらをご覧下さい。
https://kuma35-memo.readthedocs.io/ja/latest/gforth-docs-ja/bit-try.html

ディストリビューション版

Ubuntu Linux 等でもパッケージャでインストールすることで GNU gforth を使うことができます。
が、 しかし、 結構古いです。 Ubuntu Linux 24.04LTS では gforth 0.7.3 となっています。

開発版をビルド

手元では swing (GUI)絡みのビルドに失敗しましたが、それ以外の機能は動いています。
(同時にできる vmgen というのは gforth エンジン用のVM(仮想マシン)を生成するためのプログラムで、まだ未対応のアーキテクチャ等に対応するために使うものです)

git clone https://git.savannah.gnu.org/git/gforth.git

参考文献など

詳しい説明などは以下を参考にしてください。

  • GNU gforth マニュアル オレオレ翻訳 https://kuma35.github.io/gforth-docs-ja/
  • FORTH入門 レオ・ブロディ著 原 道宏 訳 工学社 1984年。 ターゲットマシンがTRS80とかなので、今から見ると古臭いですけども、古典的なFORTHの仕組みを知るには良い本です(国立国会図書館デジタルコレクションで閲覧できるようです(要登録) https://dl.ndl.go.jp/pid/12632206 )
  • Starting FORTH FORTH入門の原著です。 FORTH.Inc で無料公開されています。 但し、Webで見れる版は Swift FORTH 用に書き換えられてるそうです。 原著そのままが読みたい場合は PDF版をダウンロードしてください。 https://www.forth.com/starting-forth/
  • Thinking FORTH アメリカでは Starting FORTH と対になると言われたらしい、 FORTHのプログラムはどのようにして書くか、どう書くのが望ましいか、方法論まで踏み込んだ本(らしい。書籍版は読んだことない)。 フリー版(?)は https://thinking-forth.sourceforge.net/
  • FORTH思考 上記 Thinking FORTH のオレオレ翻訳版です。 https://thinking-forth-ja.readthedocs.io/ja/latest/

今回はここまで。次回から、あちこちつまみ食い気味に解説していきます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?