タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

programmingとrubyとanalysisに関するjune29のブックマーク (2)

  • Rubyのクラスの太った人たち

    前回の記事「Ruby、君のオブジェクトはなんて呼び出せばいいの?」で、Rubyには大量のメソッドがあることが分かりました。今回はその補足として、各クラスごとのメソッド数を数えてグラフ化してみます。 インスタンスメソッドを数える まずは、インスタンスメソッドを数えましょう。グラフ化の対象は、10以上のメソッドを持つクラスです。最初にクラスごとのメソッド数をリストアップします。 klasses = ObjectSpace.each_object(Module) def live(methods) methods.reject { |m| "#{m}".start_with? '_deprecated' } end methods = klasses.map do |k| [k, live(k.methods(false)).size, live(k.instance_methods(false

    june29
    june29 2012/07/20
    Wordleかっこいい!
  • Ruby、君のオブジェクトはなんて呼び出せばいいの?

    Rubyには大量のメソッドがあります。次のコードでRuby1.9.3に含まれるメソッド数を数えたら単純合計で1659個、ユニーク数(同名を1と数えて)で937個と出力されました。 all_methods = ObjectSpace.each_object(Module).flat_map do |c| c.methods(false) + c.instance_methods(false) end.reject { |m| "#{m}".start_with? '_deprecated' } all_methods.size # => 1659 methods = all_methods.uniq methods.size # => 937 つまりRubyには、937個もの異なる名前のメソッドがあるのです。各メソッド名は、その動作や機能を端的に表現したものでなければならないので、その一つ一

    june29
    june29 2012/07/18
    こういった観点で「言語」として分析するのはおもしろいですね。
  • 1