Feature #6513
Updated by nobu (Nobuyoshi Nakada) about 13 years ago
=begin First letter of constant is always a capital letter(in Ruby). if you define method: def Hi 1 end You're not able to use it w/o (): Hi it looks up for constant and raises error. only: Hi() or send(:Hi) None of code style guides teaches to use capital letters in methods' names. It's not convinient and bad practise. At the same time we use constants(it's modules/classes too) a lot. To access constant we use '(({::}))' '::' The idea is to change the way how ruby looks up: (1) 1) if first letter is capital - looking for constant. if not found - moving directly to step 2 (2) 2) looking for local variable and method as we do it now This change will make syntax much more awesome & sexy: ActiveSupport::Autoload -> ActiveSupport.Autoload class Request < Rack::Request -> class Request < Rack.Request Currently I can give you a hence using this monkey patch: (({class Module class Module alias method_missing const_get end module A module B class C end end end end #A.B.C instead of A::B::C - awesome?! awesome?!})) For me it is similar to changing hash syntax( => to sym: ''). I know, it is only 1 character less BUT it's 3 visible dots less too :) Thank you for considering this proposal. =end