at
コマンドなどを起動して、
サウンドを鳴らすプログラム名とベル音のサウンドファイル名と
起動時刻を指定することになるでしょうが、
これらはすべて計算機上のシンボル(名前や数字)を介した
間接的な操作や指定にもとづいているため理解が困難です。
一方、アナログ目覚し時計を使う場合は、
時計を示す文字盤の上で視覚的に連続的に
起動時刻を指定できるし、
現在時刻を将来に回してみれば未来の実際の動作も確かめる
ことができるので
UNIXでの場合に比べはるかに直感的であり
間違いも少ないと考えられます。
このように、実世界の事物そのものを使ってプログラミングを
行なうことは、それを示すシンボルなどを使ってプログラミングを
行なうことに比べてはるかに容易であることが多いと考えられます。
計算機上のテキストエディタでプログラミングするのではなく、
実世界の事物を最大限に活用して
実世界指向インタフェースのプログラミングを行なう
実世界指向プログラミングを提案します。
増井俊之. 実世界指向プログラミング. 第40回冬のプログラミングシンポジウム予稿集, pp.19-25. 情報処理学会, January 1999. PDF(180KB) PostScript(122KB)
実世界指向プログラミングを行なうことにより、 実世界の事物のみを使って以下のようなプログラミングを 行なうことができるようになるでしょう。
普段の操作画面。3行目は時間軸で、予約状況を示す。 +----------------------------+ | 1998 3/16 << * > >> 10ch | | 15:20 PM REC CLR | | |------------------------- | +----------------------------+ 予約時: 時刻/日付を変更すると予約モードとなる。 +----------------------------+ | 1998 3/18 << * > >> 10ch | | 18:00 PM REC CLR | | -----|-------------------- | +----------------------------+ チャンネル変更/REC指定 +----------------------------+ | 1998 3/18 << * > >> 3ch | | 18:00 PM REC CLR | | -----<-------------------- | +----------------------------+ 時刻を変えて停止を指定 +----------------------------+ | 1998 3/18 << * > >> 3ch | | 20:00 PM REC CLR | | -----<==>----------------- | +----------------------------+ CLRにより最初の状態に復帰。予約状況が表示されている +----------------------------+ | 1998 3/16 << * > >> 10ch | | 15:20 PM REC CLR | | |----<==>----------------- | +----------------------------+