[#48770] Re: Rubyで静的型 — "Toshiyuki Sasaki" <tsasaki1@...>
> この場合、この例では簡単かもしれませんが、たとえばvarが別のメソッド
10 messages
2014/12/23
[#48771] Re: Rubyで静的型
— Hideki Miura <m-72@...6.so-net.ne.jp>
2014/12/23
三浦です
[ruby-dev:48775] Re: Rubyで静的型
From:
Hideki Miura <m-72@...6.so-net.ne.jp>
Date:
2014-12-23 07:58:01 UTC
List:
ruby-dev #48775
三浦です > そうなんですか。しょせん人が手で書いた量のプログラム。 > コンピュータならあっという間に処理できると思ったのですが。 > 型推論の伝播を調べるのなら十分可能と踏んだのですが・・・。 型推論はちょっと足を踏み外すと計算量が爆発する類の問題なので 結構大変です。 > > ちょっと私の説明が悪かったです。三浦さんが言うに > 「変数にどんな値が入りうるのか静的に確定させるのはそれなりに > 困難」とのことですが、動的な条件(コンパイル時そうと分かるはず)のもと > でのある > 変数への代入を列挙したもの(コードのある地点までに)が「変数にどんな値 > が入り > うるのか」になれると思います。ただしそれはコードの地点が違えば違った > ものになるので、確かに三浦さんが言うようにそれなりに困難かもしれません。 どんな値が入りうるかは確かに計算可能ですが、これもたくさん分岐がある場合 すぐ可能性が莫大な物になります。 あと、共通するメソッドの表を作るのも結構大変そうです。 ただ、この手の問題は良いアルゴリズムがあるものなので、私が知らないだけ という可能性もすごくあります。 > > そうでしたか。私も自作の言語を考えていて、言語仕様は考えるのですが実装 > の方 > まで手が回らずそういったことには疎いのです。 実装は実装で面白いですからね。 一番難しいのは、実装を知った上で実装にとらわれない言語仕様を考えること じゃないでしょうか