2008年2月5日火曜日

Duck Typing

静的な型付けをしなくても 安全?
 開発方法が 短いメソッド コーディング+並行テスト でカバーできる?
 静的な型システムでも セキュリティは向上していない
 型安全性は 幻想?

言語に理論モデルを持つものと そうではないものがある.プラグマティクな人は 創るものが重要で
現実的な対応で よいのは 理解できるが
 理論モデル屋から見ると 正当性が 保証されない言語を 安全とは いえない

工学屋は どっちつかずなのだが.

2008年2月1日金曜日

catch throw

例外処理で Rubyは throw に対応するCatchを どう見つけるのだろうか?

確かにCatchブロック内に throwが 存在しなくてもよいのは 便利だが.

ローカル変数とスコープ

 ALGOL系言語のコンパイラを学生時代に 卒論として作ったが、苦労したのが変数のスコープである.ALGOL60を参考にしながらスタック管理でブロック対応したが、満足できなかった.
 Gries先生の本(Compiler construction )を読んで by reference 対応を 考察したときに 評価実態 と言う 概念を入れて 評価単位内 = スコープ として 修正した.
 理論モデル上では、再帰的呼び出しの 不動点の停止性を 見つけられずに 苦労した.
 Rubyを勉強していて ローカル変数 の 怖さを 覚える.スコープ保証がないのは便利ではないはずと思うのは私だけなのだろうか?
 言語設計哲学が 違うのが ベースにあると思えるので 仕方のないことだが.
 確かホーア(Sir Charles Antony Richard Hoare)先生だったと思うが global Variable is considered harmful と言っていたと思う

変数スコープ と ブロック (Ruby)

 ALGOL系言語のコンパイラを学生時代に 卒論として作ったが、苦労したのが変数のスコープである.ALGOL60を参考にしながらスタック管理でブロック対応したが、満足できなかった.
Gries の本(Compiler construction )を読んで by reference 対応を 考察したときに 評価実態 と言う 概念を入れて 評価単位内 = スコープ として 修正したときに、再帰的呼び出しの 不動点の停止性を 見つけられずに 苦労した.
 Rubyを勉強していて ローカル変数 の 怖さを 覚える. スコープ保証がないのは便利ではないはず. 言語設計哲学が 違うのが ベースにあるので 仕方のないことなのだが.
 確かホーア(Sir Charles Antony Richard Hoare)先生だったと思うが global Variable is considered harmful と 言っていたと思う.