From: "matz (Yukihiro Matsumoto)" Date: 2012-11-13T21:15:20+09:00 Subject: [ruby-core:49301] [ruby-trunk - Feature #7346] object(...) as syntax sugar for object.call(...) Issue #7346 has been updated by matz (Yukihiro Matsumoto). We easily forget conflict between method names and variable names, in a language like Ruby, where methods and variables have separated name space. We expect p(15) to print 15 even when we have a variable named p in the scope. Matz. ---------------------------------------- Feature #7346: object(...) as syntax sugar for object.call(...) https://bugs.ruby-lang.org/issues/7346#change-32859 Author: rosenfeld (Rodrigo Rosenfeld Rosas) Status: Rejected Priority: Normal Assignee: matz (Yukihiro Matsumoto) Category: core Target version: Next Major I propose for the parser to interpret "object(...)" as "object.call(...)". It should raise NoMethodError at runtime if object doesn't respond to "call". This would read better than using "call": double = -> n { n * 2 } double(3) == 6 Sorry if this has already been proposed before (and rejected) but I couldn't find any references to something like this using Redmine's search interface. -- http://bugs.ruby-lang.org/