廣島克佳のホームページ_Annex2
MINDについて

■■■■■■■■

 ここでは、「自然、強力、安価」と三拍子揃ったプログラミング言語MINDの紹介をします。

■■■■■■■■

何故MINDどうMIND

 MINDはFORTH流の、「自然言語に近いスタイルでプログラミングを行い得る、プログラミング言語」です。廣島は、MINDを結構長年愛用しました。近日中に、またMINDに復帰するかも知れません。コンピュータ環境の劣悪な場合、BTRONが頼りになるのは勿論ですが、MINDはDOS系統において誠に頼りになる言語だからです。

 MINDの使い勝手はリンク↓を参照して頂くとして、廣島にとってMINDは一言で言えば、

「コードを売ると言う意味でのコンピュータのプロではないが、コンピュータを使って何か仕事をすると言う意味でのコンピュータのプロユーザーにとっての最高の言語」

と言うものです。

 MINDを使う場合にもう一つの前提があります。それは、

「プログラム言語とスクリプトを区別するべきでもない、区別する必要もない」

と言う事です。MINDは、BASICよろしくダイレクトに実行させるモードを持ってます。実際、中間言語に近いコードで実行されているのですからこういう事ができるのですが。ですので、MINDは明らかにそれぞれのコンピュータ+OSの性能を限界まで発揮させる言語ではありません。それは、C++やアセンブラ等によって丹念にプログラミングされた場合に実現可能でしょう。

 だが、「コンピュータを使うプロ」は、こんな悠長な事をやっていられません。必要なデータ処理や実験制御を直ちに実現する必要があります。このような水準において、MINDは最も高い能力を発揮してくれるのです。テキスト処理だけならば、UNIXに通暁し、高い効率を誇る方が世の中には多くおられます。だが、言語コードを意識しながらのこれらの処理はやはり相当の熟練を必要とします。明らかにMINDはより手軽であり、かつ確実なのです。

 MINDの優越は、単にテキスト処理だけではなく、実験制御の水準においてもプログラムを容易に組めると言う点にあります。機械制御も様々なものがありますが、研究レベルで実験を組もうとする場合に最も適当なのがこのMINDであると思われます。

■■■■■■■■

ライブラリ集

 本ホームページ提供者にとってのMINDは、BTRONがあまねく使えるようになる以前の、高度なテキスト処理言語+実験制御用プログラミング言語、です。この用途に資するためのプログラムを幾つか書いていますので、紹介します。なお、全てPC-9801のDOS用のプログラムです。

システムツール
ま〜びゅ:MAGD.EXEおよびMAG.EXEを用いて鮪及びマキ形式(拡張子mag,mki)のグラフィックを1画面16枚のサムネイルとして表示し、サムネイルに対してfilmtn風の操作性でもって閲覧したりコメントを作成したりするツール。
 廣島が制作した本体は。magd.exeは。mag.exeは。全てlzh形式で圧縮してあります。ま〜びゅ本体もソースを含めて複数ファイルから構成されています。
各種汎用ルーチンを一括して納めたライブラリ。
スクリーンセーバー。行き先名を、予め用意したファイルの中の一覧から選択してランダムに色や表示位置を変えながら表示します。
特定ツールが拡張子と関連付けられている時、あるディレクトリ(今日、フォルダーと称している)内の全てのファイルに対して当該ツールを一括して作用させたい場合の、起動バッチファイルを作成するツール。
普及していた検索ツールであるgrep.exeを使って簡易な操作で検索できるようにした補助ツール。srcファイルだけを対象とする専用補助ツールは
あるディレクトリの中にある全てのSRCファイル(MINDのソースファイルの拡張子)の中にあるルーチンのタイトルを一覧するツール。一覧テキストファイルを吐き出します。
ボリューム単位でファイルの同期を取ってバックアップするツール。

FILMTNをMINDシェル化するツール群
DOS版MINDにはシェルが添付されていましたが、日常使っていたファイル操作ツールであるFILMTN.exeに慣れると、同じ環境でそのままMINDしたいと考えるようになりました。FILMTN自体が非常に優れたツールだった事は勿論です。そこで、FILMTNをMINDのシェルとして使えるようにする為の補助ツールを幾つか作りました。よって、単独で使ってもデメリットばかりで、特段のメリットはありません。 なお、本ページに掲載した他のツールも当然FILMTNから直接呼び出せるようにして使って便利なものが少なくありません。
コンパイル実施ツール
ソース修正の為にソースとinfファイルを同時にエディターに立ち上げさせるための補助ツール。
MINDは、特定の実行ファイルに対して”対話”ができます。これは、当該実行ファイルの中にあるルーチンをコマンドラインから呼び出して直ちに実行させる機能です。この”対話”に入る為の補助ツールです。
あるライブラリの履歴を表示させるツールを呼び出す補助ツール。

実験制御用
PC-9801のテンキーの1、2、3のいずれが押されているかをスキャンするルーチン。
PC-9801のテンキーのいずれが押されているかをスキャンするルーチン。
「タイマ設定」で設定できる時間に制限があり、実験制御には実用的ではなかったので、設定可能時間を拡張する為のルーチン。当然、誤差がありますが、実際に測定してみたところ、i486DXクラスのCPUで1時間未満では1秒の誤差も出ていませんでした。
スタックで指定した回数、ベルを鳴らすルーチン。

PIO-48W関連ツール
コンテック社製PIO-48WI/O入出力ボードを用いて実験を様々に行った際のツール群です。どのポートをinにし、どれをoutにするかは決め打ちしてバッファ端子ボードを作ったので、汎用ツールではありません。
コンテック社製PIO-48WI/O入出力ボードへの基礎アクセスルーチン。
アウトプット回路の正常さを試験するためのルーチン。単純に1を順番に各bitに置いていくだけです。
入力回路の正常さを試験するためのルーチン。

数値・文書処理
スタックに与えられた数値を上限とする整数列を生成するルーチン。何でこんなものを作ったのか、忘れました。;
対象ファイルのデータのバイナリー表示ツール。結果をテキストファイルとして吐き出します。
対象テキストファイルのCR+LFで区切られた部分を一行と見なして、ソートをかけた結果をファイルとして吐き出す補助ツール。MS-DOSのSORTコマンドを利用しています。
対象テキストファイルのCR+LFで区切られた部分を一行と見なして、ランダムにソートをかけた結果をファイルとして吐き出す補助ツール。数値列や文字列を簡単にランダムに配列し直すために用います。
テキストをTAB切り文書に変換するツール。BTRONの表計算ツールへデータを変換する為に作りました。

試みとテスト
BTRON風のマウスアイコンを実現しようとして作ったルーチン。
キーボードの各キーにどのASCIIコードが割りつけられているかを調べるツール。
MINDではランダムアクセスファイルは構造体と呼ばれています。その構造体へのアクセススピードを評価する為のツール。
マウスの各種試験ライブラリ。単語”マウス位置”が本当はどこのポイントに反応しているのかを調べたツールは

■■■■■■■■

リンク集
スクリプツラボ:MINDの製造販売。

■■■■■■■■

廣島和佳のホームページのインデックスへ戻る