![見出し画像](https://assets.st-note.com/production/uploads/images/82075251/rectangle_large_type_2_27feae47094ad9c32cc460b6b34e8ef7.png?width=1200)
ふぇぇ…CLC-INTERCAL 1.-94.-2をインストールしたいよぉ…。゚(゚´Д`゚)゚。
CLC-INTERCAL 1.-94.-2ってなあに?
マゾヒスト御用達の古のプログラミング言語"INTERCAL"のPerl実装。オブジェクト志向ならぬクラスとレクチャ志向が導入されていたり、Just-in-timeコンパイラならぬJust-too-slowコンパイラが入っていたりと、とにかく素敵な拡張が入ってる。
すまん、私も追いかけきれてない。その上使いこなしきれてない。その上ちゃんと実行環境をローカル環境に用意したのはこの記事での内容が初めて。
なお、バージョン番号1.-94.-2の-94とかというのは、マイナス94とかであり、「バージョン1.x.xに達するまであと94回のバージョンアップが必要」を意味する。ってREADMEあるいはマニュアルに書いてあった。
どうしてインストールしたいの?
全てアナゴルの為です。
どういう環境なの?
Arch GNU/Linuxです。yayユーザになりました。Perlはpacmanから入りました。
Perlは疎いです。全てPythonistaの所為だということになりませんか?
いつ試したの?
2022-07-05 UTC+9の夕方。なお、本日は午前中にyay -Syu済み。
何をしたの?
そのDebianパッケージをar -xしてそこから得られたdata.tar.xzをunxzしてtar xfした。
中身はビルド済みな上にmvするだけでインストールできるusr/ディレクトリだった。
私のホームディレクトリとかにインストールしたいな…/usr/shareとかじゃなくて…ということで、"$HOME/.local/"にインストールしたいということにする。
手順3で得られたusr/ディレクトリの中身usr/bin/とusr/share/を"$HOME/.local/"に移転した。ヒヤッとしたのは"$HOME/.local/share/"はすでに中身があるという点である。
そんでもってperldocのENVIRONMENT節を読んで、Perlのライブラリに.localなんとかを優先的に含んでほしいな…ということを実現すべく、.bashrc(kshとかzshとかfishとかのユーザは許してくれ)の最終行に次を追加した:export PERL5LIB="$HOME/.local/share/"
PATH追加は適当にやろう。
適切なディレクトリにおいて、99バイトまでcatするcatプログラムであるcat.clciを作成した。中身は次の1行のみからなる:DO;1<-#99DOWRITEIN;1DOREADOUT;1
~/.local/bin/sick cat.clci
結果、コンパイルに成功し、cat.ioができた。
./cat.io <cat.clci
結果、cat成功。*000 Invalid statementも出てきて感動。
おわりに
ということで、これまでオンラインでしか実行テストができなかったのですが、これからはローカル環境でできるようになりました。素晴らしい。
私は今までどうして逆にビルドができていなかったのでしょうか。不思議でした。今まではオリジナルのソースコードからビルドしようとしてきました。全て元のソースコードが読みきれなかった所為でした。それとも、ライブラリはどうやって用意しろと、とかということもありました。まじぴえん。ビルド済みパッケージにオギャらざるを得ない状況というのは実在するものです。
なにはともあれ、CLC-INTERCALユーザ増加おめでとう!