j_ruby.rb � � V � � V Kernel.class_eval do #FIXME this is terrible def static(meth) define_singleton_method(meth) do |*args, &b| new.send meth, *args, &b end meth end def abstract(meth) define_method(meth) { raise "Please implement #{self.class.name}##{meth}." } meth end def final(meth) self.extend Module.new { define_method(:method_added) {|added_meth| raise("Overriding or redefining #{meth} is
![j_ruby.rb](https://cdn-ak-scissors.b.st-hatena.com/image/square/1ef26f6cb4349557952890dbe3e567f7f98dc151/height=288;version=1;width=512/https%3A%2F%2Fgithub.githubassets.com%2Fassets%2Fgist-og-image-54fd7dc0713e.png)