定数として用意した属性を誤って書き替えちゃうケースって想像しにくいが。
書き替える時は意図的なんだから、書換えられないようにするのはまずくないか。

C++のような、コンパイル時にエラーがチェックできる世界が望みなら、
わざわざ動的型言語を使わんでも、と思う。