From: Joey Zhou Date: 2011-09-26T00:06:25+09:00 Subject: [ruby-core:39702] [Ruby 1.9 - Feature #5352] How about using <> to represent Here Document? Issue #5352 has been updated by Joey Zhou. Nobuyoshi Nakada wrote: > I'm somewhat negative. > It looks like Perl's "<>" but is pretty different, so I'm afraid that it would be also confusing. There are a few things different in Ruby and Perl. $foo is not a scalar, @bar is not an array, %w is not a hash "re = /pattern/" in Ruby means assigning a regexp to re, but in Perl "$re = /pattern/" means "$re = $_ =~ /pattern/"... So I think the difference is not a problem, some differences already exist. "<<" of Perl has two meanings: shifting bits and here document. One is for the integers and the other is for the string, maybe leading to less confusing. However, in Ruby, "<<" is instance method of String and IO/File, and here document is also string, the probability of confusing is larger, I'm afraid. ---------------------------------------- Feature #5352: How about using <> to represent Here Document? http://redmine.ruby-lang.org/issues/5352 Author: Joey Zhou Status: Open Priority: Normal Assignee: Category: Target version: "<<" is a frequently used method in text manipulation. Meanwhile, it's also the beginning token of a here-document. Sometimes it may be confusing to newbies. Unlike Perl, in which "<>" is a very very frequently used operator to read lines from a filehandle, in Ruby, "<>" has no meaning. So I think it can be used to represent Here Document, so as to reduce the possibility of misunderstanding method "<<" and here-document token "<<". And In my opinion, <> is more clear than <<, because it looks like kind of brackets. For example, str = .upcase + .downcase aaaaaa SECT1 XXXXXX SECT2 may be clearer than: str = <