関数型プログラミング言語Haskell Part24
■ このスレッドは過去ログ倉庫に格納されています
0100デフォルトの名無しさん
2013/11/02(土) 00:08:16.38>今回の例ではデータ構造は一つだからこれは当たらない
>>93の後段では「一般用途向け(Data.Text.Text)」と
「特殊用途向け(Data.Text.Internal.Text)」という
二種類のデータ構造を提供していると書いてあるように読めるから、
矛盾していないかな?
>それよりは、「特殊用途向け」に.Internalモジュールを公開して、その代わり
>これは内部実装だからマイナーバージョンアップで壊れるかもしれないよ、
>気軽に使うなよ、と宣言しておくのがまだマシだという思想
こういったレイヤの異なる二種類のインターフェイスを提供するという考え方(思想)は、
決して間違いではないとは思う
ただし、SMLを含むモダンな言語のモジュール化機構では、
アプリケーション側で用途に応じて必要なモジュールだけをimportできる仕組みが、
言語仕様の一部として提供されている
結局、このレス(>>93)では、まともなモジュール化機構を持たないHaskellが
(形式的な理論ではなく)コード設計技法という小手先のテクニックで
モジュール化機能を模倣している、という説明にしかならない
これは、モジュール化機構を持たないJavaScriptが、コード設計技法と規約によって
モジュール化の基本である階層的名前空間を実現している実情と、よく似ている
そして、モジュール化機能がツールで支援できない点もHaskellと同様だ
■ このスレッドは過去ログ倉庫に格納されています