Issue #6265 has been updated by mame (Yusuke Endoh).


=begin

I don't think the current code in mkmf.rb is good.
I just meant that the syntax is actually used and thus we cannot remove it from 2.0.
I'm not against this proposal in the future.


  $ cat concat_quine.rb
  eval$s="s='eval$s='+$s.split.join.dump;('%0382b'%(('40i3tgbj1q4n'+
  '"       "n3"       "t7"      "1py"       "1ur"     "h'"        "+
  '"  "xtb74az"  "4"  "ym"  "2"  "03"  "fx542i6"  "e"  "udoj"  "').#
  t"  "o_i(36)"  "<"  "<7"  "0"  "))"  ".gsub(/"  "0"  "(?=1"  ")|xx
  |"  "1(?=0)/"  ")"  "{$"  "&"  "<<"  "34}.tr("       "'1',"  "''<<
  3"       "2)"       ".g"  "s"  "ub"       "('"  "0"  "'){;"  ";;s.
  slice!(0,1)}.scan(/.{66}/){puts$&}#_CONCAT_QUINE_(c)_Y.Endoh_2012"

  $ ruby concat_quine.rb
  eval$s="s='eval$s='+$s.split.join.dump;('%0382b'%(('40i3tgbj1q4n'+
  '"       "n3"       "t7"      "1py"       "1ur"     "h'"        "+
  '"  "xtb74az"  "4"  "ym"  "2"  "03"  "fx542i6"  "e"  "udoj"  "').#
  t"  "o_i(36)"  "<"  "<7"  "0"  "))"  ".gsub(/"  "0"  "(?=1"  ")|xx
  |"  "1(?=0)/"  ")"  "{$"  "&"  "<<"  "34}.tr("       "'1',"  "''<<
  3"       "2)"       ".g"  "s"  "ub"       "('"  "0"  "'){;"  ";;s.
  slice!(0,1)}.scan(/.{66}/){puts$&}#_CONCAT_QUINE_(c)_Y.Endoh_2012"
=end

----------------------------------------
Feature #6265: Remove 'useless' 'concatenation' syntax
https://bugs.ruby-lang.org/issues/6265#change-25685

Author: rosenfeld (Rodrigo Rosenfeld Rosas)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
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/