実行環境

Rebolの実行環境には、最小限のRebol/Coreと派手派手なRebol/Viewがありますが、…Rebol/Viewはちょっとだけ入れてみましたところ正直言ってケバイのでRebol/Coreを選択します。
Windowsで動くRebol/Coreの最新版はrebol031.exeですが、これがwinhugsのようにウィンドウを開くのですよ。いやまあそれはそれで便利ですのでいいのですが、Hugsで言うところのrunhugsに相当する、ごくごく普通にコマンドプロンプト上で実行する手段が見当たらないのですね。
-cやら-wやらを付けるとウィンドウを開かずに実行してはくれますが、そこはWindowsアプリケーション、標準入出力がコマンドプロンプトと結び付けられていないため、結果が見えないという有り様です。マニュアルにはリダイレクトしろと書いてます。実際に... | moreのようにフィルタを通しますと結果が画面に出てきます。
rebol031.exeをtdumpしてみましてもAllocConsoleやAttachConsoleは使われていない様子。ではどうすればいいかと言いますと…リダイレクトが利いているのですからパイプで、というのも考えたのですが、それよりもPEヘッダのSUBSYSTEMを書き換えてしまいましょう。
rebol031.exeの0DChバイト目の02を03へ上書きするだけです。
これでWindowsのローダーがコンソールアプリケーションと認識してくれますので、常にコンソールに結び付けられます。
ウィンドウで使いたいときもあるでしょうから、オリジナルも置いておきますか…。というわけで私はコンソールアプリケーション化したほうを、呼びやすいようにバージョン番号を切り捨ててrebol.exeとリネームしました。実のところrebol.rやsetup.rが無くても単体動作するようですのでパスの通ったところに放り込んで終わりです。
遥か昔Kylixで遊んだときの記憶ではX上ではGUIアプリであってもターミナルと結びついていましたので、恐らくWindows以外ではこの問題は無いと思われます。