[Ruby] Ruby
訓練のためにと思って Ruby を使ってあるプログラムを書いています。
一応専門がプログラミング言語理論とか型理論とかその辺で、Javaに慣れた身としては戸惑うことがたくさんあります。
というか動的型付け言語全般の話かもしれません。
特に慣れないのが
- メソッドや変数に型注釈を付けない
という点。
型注釈、 Type Annotation っていうのは最大のドキュメンテーションです。
これがないコードがいかに読みにくいか。
自分の卒論は型推論の実装でしたが、そもそも型推論って理論的には面白いけど、(Type Annotation を付けないという点で)実用上そこまで意味があると思えないんですよね。
あとは、まあ Ruby ってどうなのと思うものもいくつかありまして、
- 後置 if 読みにくい
- unless の存在が許せない
- 抽象クラスがない
- メソッド内で @変数名 を使うとそれがインスタンス変数になる(クラス宣言時に最初にインスタンス変数を列挙できない)
- private :変数名 とか attr :メソッド名 とかキモイ
- あとやっぱり end キモイ
とか、そのへんですかね
まともに書き出してまだ1週間くらいで、まだまだ慣れない。。