プログラミング言語Disのプログラム(とリンク)集
ちな2024年6月4日の時点のやつ
本家のやつ
Ben Olmstead先生の提示したやつ
昔の本家のところとかミラーのところとか(2024年6月4日現在ではどちらもアーカイブされてるサイト)で配布されてる
プログラミング言語Disはパブリックドメインのもと配布されており、コード例も同様な感じ
そんでもって2種類のプログラム例と共に配布されてる
666.dis
666と出力するだけ。
*>>*|{{{!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!{**
cat.dis
標準入力のをそのまま標準出力に出すやつ
*^********************************}{*^*****!***
この解説版としてcat_expl.disもある
(Unix 'cat' in Dis. This is the language test; I shall be working on a)
('Hello, world' program presently. In the meantime, here's cat with )
(explanation: )
* (Set the data pointer to 42--from the ASCII code of '*')
^ (Jump to label 1, below, via the ! at the new data pointer.)
||||||||||||||||||||||||||||||||
(Placeholders.)
(label 1:)
}{ (Read a character, write, automatically die on EOF.)
* (Set data pointer back to 42.)
^ (Read character, write character, repeat.)
||||| (More placeholders.)
!||* (Data for jump and data pointer instructions which are used
elsewhere.)
Esolang(ウィキ)のやつ
このサイトの内容はCC0 public domain declarationで載ってるからここに載せても問題ない感じ
調べてみたけどそこまで載ってなさげだった
Disの仕様としては非公式なんだけどもしデータ用に自由に文字をロードできたらこんな風に書けてたHello, world!プログラム
Disの正統派の者として私からはこんなのDisじゃないとは思いました。それでもなお載せられちゃってるのは載せたままとして。
Hello worldのやつ
`Hello, world!`してくれる
しかも改行もしてくれる
^!|||||||||||||||||||||||||||||||||{!!!||||||||||||||||||||||||||||||||||||||||
||||||||||||||||*_>_*>|_*_>_*_>_*_>_*_>_*_>_*_>_*_>_*_>_*_>_*>__*|_>*__|*|||*__
>*>||*>_|*__>*__>*__>*__>*__>*__>*__>*{_>*>_|*>||*__>*>||*>||*__>*__>*__>*>_|*>
||*__>*__>*__>*__>*__>*__>*{__*>||*>_|*__>*__>*>||*>||*__>*>_|*>||*__>*__>*__>*
__>*__>*__>*__>*{{>*>||*>_|*__>*__>*__>*__>*__>*__>*__>*__>*__>*{_>*>_|*>||*__>
*>_|*>||*__>*__>*__>*__>*__>*__>*__>*__>*__>*{_>*>||*>_|*>|>*>||*>_|*__>*__>*__
>*__>*__>*__>*__>*__>*{_>*>|_*>||*>_|*__>*>||*>_|*__>*__>*>_|*>||*__>*__>*__>*_
_>*__>*__>*{__*>||*>_|*__>*>_|*>||*__>*>|_*>||*>_|*__>*__>*__>*__>*__>*__>*__>*
__>*{_>*>|_*>||*>||*__>*__>*__>*__>*__>*__>*__>*__>*__>*{_>*>|_*>||*>_|*__>*__>
*__>*__>*__>*__>*__>*__>*__>*{_>*__|*>__|*>__|*__|*__>*__>*__>*__>*__>*__>*__>*
__>*__>*>_|*>||*{_>*__|*>__|*>__|*{_|*__>*>||*>||*{!
見た感じ95番地以降をコード、34番地からの3つをデータ、37番地を34番地へのリターン用のやつにしてるっぽい
しかも全842文字ってすっげえなおい
Code Golf Stack Exchangeのやつ
このサイトに載せたやつは、投稿した時期によってCC-BY-SA 2.5だったり3.0だったり4.0でライセンスされるっぽい
一見するとヘロワに見えないけどヘロワするやつ
これ2011年12月6日のやつでCGCCにおけるDisのやつはこの投稿が初
そして私がアカウント作るまでそれ以外の投稿ないっぽい
私が前のアカウントで上げてからのやつ
私が2021年6月21日に上げるまで誰もDisで回答してなかったっぽい
出力なしの無限ループのやつ
Truth-machineのやつ
自信作
制約がトリプルスリーなやつ
たった2文字でcatするやつ
無限出力のやつ
`{`なしで`{`を出力するケイドロのやつ
スマホで作るの大変だった記憶あり
絶対正しいプログラムに入らない部分文字列のやつ
ダブルスピーク
前のアカウントで投稿したのこの2021年8月21日のやつが最後っぽい
今のアカウントからのやつ
逆から実行したら逆から実行してるってことがわかるやつ
奇数文字目を除去して偶数文字目を二倍にするやつ
素数判定のやつ
今日投稿した
まとめ:もっと制御フローに満ち溢れたDisプログラムを作っていきたい
こんな感じで纏めてみた
今迄めっちゃシンプルな問題への解答に特化しまくりすぎてもーちょい複雑なやつとかやれてなさげ
だからこそもーちょいCGCCでなんか頑張っていきたい
今例えばこういう、COBOLのコメントをなくしてく問題に取り掛かってる