From: "Ara.T.Howard" Date: 2004-03-18T01:24:38+09:00 Subject: Re: why use heredoc in doublequotes? On Wed, 17 Mar 2004, Robert Klemme wrote: > > "Simon Strandgaard" schrieb im Newsbeitrag > news:pan.2004.03.16.19.37.24.107822@adslhome.dk... > > When you can do like this: > > > > server> ruby a.rb > > "im some text\n" > > server> cat a.rb > > str = < > im soooome text > > TEXT > > p str > > server> > > > > > > What is the rationale for doing <<"TEXT" ? > > > > Have I misunderstood it? > > IMHO "< can use white space in the delimiter (see example d): _and_ you can delim with tokens reserved for ruby's syntax: ~/eg/ruby > cat heredoc.rb s = 'foobar' p <<"<<" #{ s } << ~/eg/ruby > ruby heredoc.rb " foobar\n" -a > > irb(main):002:0> a=< irb(main):003:0" 5+2=#{5+2} > irb(main):004:0" HERE > => "5+2=7\n" > irb(main):005:0> b=<<"HERE" > irb(main):006:0" 5+2=#{5+2} > irb(main):007:0" HERE > => "5+2=7\n" > irb(main):008:0> c=<<'HERE' > irb(main):009:0' 5+2=#{5+2} > irb(main):010:0' HERE > => "5+2=#{5+2}\n" > irb(main):024:0> d=<<"HERE AM I" > irb(main):025:0" 5+2=#{5+2} > irb(main):026:0" HERE AM I > => "5+2=7\n" > irb(main):027:0> d=< irb(main):028:0" 5+2=#{5+2} > irb(main):029:0" HERE AM I > irb(main):030:0" HERE > SyntaxError: compile error > (irb):27: syntax error > d=< ^ > from (irb):27 > irb(main):031:0> > > Regards > > robert > > -- =============================================================================== | EMAIL :: Ara [dot] T [dot] Howard [at] noaa [dot] gov | PHONE :: 303.497.6469 | ADDRESS :: E/GC2 325 Broadway, Boulder, CO 80305-3328 | URL :: http://www.ngdc.noaa.gov/stp/ | TRY :: for l in ruby perl;do $l -e "print \"\x3a\x2d\x29\x0a\"";done ===============================================================================