次世代言語議論スレ[Go Rust Kotlin Scala]第4世代at TECH次世代言語議論スレ[Go Rust Kotlin Scala]第4世代 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト956:デフォルトの名無しさん 17/06/01 11:27:26.76 HdFpeWhQ.net ところで質問なんですが Haskellの型クラスは裏でメソッド辞書を渡して実行時ディスパッチをするって読んだんですがこの理解で合ってます? https://people.csail.mit.edu/dnj/teaching/6898/papers/wadler88.pdf それともコールする関数の決定も何らかの最適化機構でコンパイル時にすませてしまうのでしょうか 957:デフォルトの名無しさん 17/06/01 11:48:38.71 Bx3/ibOs.net >>956 C++のコンパイル時ダックタイピングと同じ 実行時ディスパッチではない 958:デフォルトの名無しさん 17/06/01 12:35:37.68 bubu+W4z.net >>956 後者で合ってる GHCの場合は最適化無しでランタイムにdictionary lookupするコードを生成 最適化でコンパイル時解決になる 指定なしなら通常は最適化される 959:デフォルトの名無しさん 17/06/01 12:56:45.70 sszEh+oH.net >>958 なるほど If the type of a function contains a class, then this is translated into a dictionary that is passed at runtime. The translation simply assures that the appropriate dictionaries passed at run-time; ... One drawback of our translation method is that it introduces new parameters to be passed at runtime, ... 等々しつこく書いてあったのでてっきり今もランタイムかと。 その後コンパイル時に完結できるようになっていたんですね。ありがとうございます。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch