作者: 機械伯爵
日時: 2002/4/2(01:57)
 ども、機械です。

 スクリプト初心者の方で、どのスクリプトを勉強しようと思ってるか
迷ってる方、悪いことはいいませんから、Pythonをはじめてください。

 ・・・・・と、言えば終わってしまうのですが・・・(いや、マジで)

 まぁ、自分の贔屓の言語ばっかり挙げても信憑性が薄いので、他にも
私がすすめる言語と、その理由などを書いていきたいと思います。

 まず、Windowsユーザで、手軽にアプリケーションを開発したい方。

 このような方には、HSP(Hot Soup Processor)なんかがおすすめです。

 HSPの本家・・・www.onionsoft.net/hsp/

 スクリプト言語かどうかは「かなり」疑問ですが、とりあえず掛ける手間に
大してこれ以上に莫大なリターンがある環境は、そうそうありません。

 Delphiもフリー化されましたが、元Pascalユーザや、Pascalが好きなひとを
除いて、決して「初心者向け」ではありませんので、私はおすすめできません。

※ObjectPascalの文法はC++以上に難しいですし、あまりPascalの特性を生かして
 いるとは私には見えません。Pascal系なら、ヴィルト先生の作ったOberonか、
 FreePascalのほうが多分、良いと思います。

 あと、このTSNETで扱ってる言語の中でPython以外に私がお勧めなのは、実は
Tclです。

 Tclは、非常にクセの強い言語と言われますが、文字列を引き渡しながら実行する
ところなんかは、意外に理解しやすいと思いますし、GUIたるTkも使い放題です
し、MacでもUnixでもWinでもなんでもござれの互換性の高さもあります。

 さらに言えば、書き方がオブジェクト指向言語のSmalltalkにちょっと似てるとこ
がありますので、意外にSmalltalkに進むのがすんなりいきそうな気がします。

 Smalltalkといえば、本来とあるワークステーションのカスタマイズ用の言語
ですので、もし、英語が得意なら、これも初心者向きの言語なんじゃないかな、と
思います(実装としては、あのアラン・ケイもプロジェクトに参加してるSqueakが
おすすめ)

 ひるがえって、実用的な言語をお探しなら、awkをお勧めします。

 まぁ、この言語で関数を書くところまで極める必要があるかどうかは趣味の範囲
になりますが、使い捨てのテキストフィルタや、簡易データベース、さらには本領
発揮の統計処理を家計簿や成績表や製品台帳や出納帳に使えれば、もうスクリプトの
初心者なんて言われません。

 逆に、初心者に向かない言語は・・・Perl,Ruby,Lisp系,Forth系,JavaScript
といったとこでしょうか・・・

 JavaScriptやPerlは、WebScriptやCGIで大活躍で「とにかくこの通りに書けばこ
の通りに動く」といったレベルで使われる方が多いようですが、JavaScript自体は
そんなに単純な文法ではありません(難しい言語を単純化したような形態の言語なの
で、C++などを知らないと意味がわかりにくい)し、Perlは単純なスクリプトから
ゆっくり覚えるならともかく、高度なテクニックを駆使して書かれたスクリプトを
自分なりに利用するのはやや難しいうえ、さまざまな変数が入り乱れるソースになる
とかなり読みにくく、理解しづらくなります。

 ですから、もしJavaScriptやPerlで始めるなら、そこらへんにあるコードをわけも
わからずひろってきて再利用するのでなく、ゆっくりと基礎から理解できる範囲を広げ
ていくやり方をお勧めします(ある程度慣れれば、他人のテクニックも盗めるように
なりますけどね)

 Rubyは、「オブジェクト指向言語として考えない」のであれば、比較的簡単に導入
できると思います(爆)

 従来的な手続き式言語としてみれば、Rubyはそこそこ理解しやすいやさしい言語だと
おもいます。

 ただ困ったことに、Rubyをただの手続き型言語として教えてくれる人もいないし本も
無いので、Ruby作者のまつもとさんの神経を逆なでにしても「入門、手続き型
スクリプト言語Ruby」という本を、誰か書いてくれることを望みます(笑)

<一部、本人削除>

 Lisp系の前置式言語や、Froth系の後置式言語は、面白いとは思いますが(特に私は
Forth贔屓ですけど)、数学的な書式が直感的に記述できないため、他の言語に慣れた
後でも良いと思います。

 あと・・・スクリプトとしては無視されがちですが、Microsoftの開発したVBScript
は結構初心者向けで使いやすいと思います。

 ただしこれは、WebScriptでなく、あくまで「WindowsのScript」として使ってください(WebScriptとして使うと、テキメンに嫌われます)

 こんなもんでしょうか・・・

   機械伯爵