Feature #4007: numeric literal syntax sugar
http://redmine.ruby-lang.org/issues/show/4007

Author: Ondrej Bilka
Status: Open, Priority: Normal
Category: core, Target version: 1.9.x

Hello
As I looked to C++ extension suffing numeric literals.
My proposal is make . in method call of numeric literal optional so we can for example write
4i instead 4.i 
Another application is making Time manipulations more readable like
deadline=Time.now + 2hours

Here is patch
It should be more restrictive to disallow traps like 0xadup
Index: parse.y
===================================================================
--- parse.y	(revision 29647)
+++ parse.y	(working copy)
@@ -3592,6 +3592,16 @@
 			$$ = method_arg(dispatch1(fcall, $1), $2);
 		    %*/
 		    }
+		| numeric tIDENTIFIER opt_paren_args
+		    {
+		    /*%%%*/
+			$$ = NEW_CALL($1, $2, $3);
+			fixpos($$, $1);
+		    /*%
+			$$ = dispatch3(call, $1, ripper_id2sym('.'), $2);
+			$$ = method_optarg($$, $3);
+		    %*/
+		    }
 		| primary_value '.' operation2 opt_paren_args
 		    {
 		    /*%%%*/


----------------------------------------
http://redmine.ruby-lang.org