« プログラミングを始めるには | Main | プログラミングを始めるには(3) »

July 14, 2014

プログラミングを始めるには(2)

MacOSやWindowsのようなGUIを持ったOSが登場する前は、ファイル操作をはじめとするすべてのことをシェルとかコマンドプロンプトからコマンドを入力して行なっていた。その當時、UNIX上で何かしたい場合はこう言われていた。

(1)シェルのコマンドラインで出來ないか試す。
(2)コマンドで出來ないことはスクリプトを書いて試す。
(3)スクリプトで出來ないことはCのプログラムを書いて試す。

いまどきの若手SEはWindows以降の世代なので、Linux上でファイルの移動やコピーをするにもGUIでやろうとする。なので、シェルから複雜なコマンドを入力して何かしようなどとは考えない。そうなると上記のような3段階の發想にはならないので、GUIで出來なかったらそこで行き止まりとなる。そして「そんなむずかしいことを自分で出來るようになる必要はない」などと考えて、變に安心したりする。

この3段階の發想を地で行くのがEmacsというエディタだ。

(1)テキストの編集をする場合はまずコマンドで出來ないか試す。
(2)コマンド出來ないことはelispでコマンドを書いて出來ないか試す。
(3)elispで出來ないことは...。

テキストの編集をコマンドでと言うと、我々よりもさらに先輩の方々はexのようなラインエディタを思い浮かべるのかもしれない。そして彼らは重たくなるという理由でEmacsの使用を極度に嫌がった。ワークステーションのCPUがMC680X0とか初期のSPARCで、メモリもメガバイト單位だった頃の話だ。嫌ならインストールしなければ良いのに、必ずといって良いほどEmacsはインストールされていた。

Emacs上で文字を入力したり檢索したりする場合、それはコマンドとして動作している。普通にabcと入力する場合、それを1文字ずつself-input-commandというコマンドが處理しているのだ。そしてその他數多くの編集機能もすべてコマンドとして動くようになっている。さらに、それらの豐富な編集コマンドを驅使しても出來ないことがある場合に、elispで書くというわけだ。ということで、(3)に該當するようなことはほとんど無いといって良い。

さて、いくらelispが素晴らしいと言っても、さすがにこれを最初に學ぶプログラミング言語にしたいという人はほとんど居ないと思われる。おそらくは、成り行きで擔當することになった開發で使ったプログラミング言語は習得出來たが、これで良いのだろうか?という疑問を持ち始めたときに、物陰からすっと入ってくるタイプのものなんだろうという氣がする。


|

« プログラミングを始めるには | Main | プログラミングを始めるには(3) »

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/74224/59981021

Listed below are links to weblogs that reference プログラミングを始めるには(2):

« プログラミングを始めるには | Main | プログラミングを始めるには(3) »