From: "mame (Yusuke Endoh)" Date: 2012-04-09T12:43:58+09:00 Subject: [ruby-core:44207] [ruby-trunk - Feature #6265] Remove 'useless' 'concatenation' syntax Issue #6265 has been updated by mame (Yusuke Endoh). =begin Matz, > I agree with removing string concatenation in 3.0. Okay. Then, is the syntax deprecated in 2.0? If so, it would be good to warn it. diff --git a/parse.y b/parse.y index 0393dc1..1726117 100644 --- a/parse.y +++ b/parse.y @@ -3916,6 +3916,7 @@ string : tCHAR | string string1 { /*%%%*/ + rb_warning0("string concatenation syntax is deprecated"); $$ = literal_concat($1, $2); /*% $$ = dispatch2(string_concat, $1, $2); Rodorigo, > Yusuke, am I supposed to understand what you meant with the code in your last comment? If so, I didn't get it... Sorry for the confusion. The code is just a joke. I can write such a code much easily without the syntax. eval$s=%q(puts(%(eval$s=%q(#$s)))################################# ## #### #### ###### ##### #### ## ## ######### ### #### ## ##### ######### ### ###### ##### ## ######### ### #### ## ##### ######### ### ###### ##### ## ######### ### #### ## ##### ######### ###### ##### ## #### #### ## ##### #### #l# ###### ##### #################################################################) -- Yusuke Endoh =end ---------------------------------------- Feature #6265: Remove 'useless' 'concatenation' syntax https://bugs.ruby-lang.org/issues/6265#change-25734 Author: rosenfeld (Rodrigo Rosenfeld Rosas) Status: Assigned Priority: Normal Assignee: mame (Yusuke Endoh) Category: Target version: 3.0 What is wrong with this code: some_method 'argument1', 'argument2' 'argument3' Yes, the missing colon, but it is not always easy to notice that... What is this ('concatenation' 'syntax') useful for? Why writing ('some ' 'concatenation') instead of 'some concatenation'? A missing colon between string arguments can lead to some bugs that may be hard to find, specially if the arguments are optional. And I can't see any useful case where this allowed syntax for concatenation would help. -- http://bugs.ruby-lang.org/