RubyのREADMEには,これだけのものが特徴として挙がってる。(アーキテクチャによる)移植性が高い.多くのUNIX上で動くだけでなく,DOSやWindows,Mac,BeOSなどの上でも動くうーん,ちょっとこれは多いし,えらく技術的に思う。プログラム言語には,スクリプト言語とそうでないのがある。スクリプト言語は「コンパイル」という手続きが必要ない。コンパイルが必要なプログラム言語は,お定まりの命令を書かないといけなかったり,プログラム全体の骨組みが固まってないと動かすことができない。これでは使い捨てのプログラムを書く気が萎えるし,(使い捨てでない)大きなプログラムを書くときにも,少しずつ部品単位で動かして試すのが大変。スクリプト言語でないプログラム言語は,Java,C++など。スライドでは「#!」で始まる,とあるが,えらくUNIX的,というかJavaScriptは違うやん。シェルから直接実行できるのも違う。コンパイルが必要ないの,ぐらい。スクリプト言語のためのプログラム(でありプログラムソース)を,特に「スクリプト」という。「ファイルの中の文字列を置き換えたい」とか特定の目的のためには,そのために作られたプログラム言語を使うのが早いと思う。それではそれぞれの目的に合った言語を覚えないといけないし,ちょっと目的が変わったときに使えなくなる。gets汎用的な言語は,特定の目的がある言語よりスクリプトが長くなるけど,何でもできる分,変化に強い。いうか,文字列置換が's'とか覚えてられない。ある程度冗長性がないと。強者の人はどうやって覚えてるんだろう。Rubyは,変数,式,分岐,繰り返し,関数(メソッド),例外と,普通のプログラム言語にある仕組みは全部揃ってる。最近の言語なので,ソケットも当然扱える。ライブラリも,文字列,配列,ハッシュ,ファイル,スレッドなどなど,一通り揃ってる。後で見るけど,Web関係もある。オブジェクト指向は,難しくない。オブジェクト指向は,何か(「モノ」に限定されない)に分類を与え,その分類が振る舞いを決める世界。オブジェクト指向なプログラム言語では,スクリプトは単純になる。aには配列を,sには文字列を代入している。配列のlengthメソッドは要素数を返し,文字列のlengthメソッドは文字列の長さを返す。メソッドの振る舞いはオブジェクトごとに違う。"\n";変数に$とか@を付けないといけないだけで,ムキーッ!ってなる。