ara howard wrote: > yes. in real code i generate the hdoc in a loop roughly like so > > loop { > hdoc = "__a#{ rand(2**30).to_i }__b#{ rand(2**30).to_i }__c#{ > rand(2**30).to_i }__" > > break unless template =~ Regexp.escape(hdoc) > } Or: hdoc = "__template" while /^#{hdoc}/ =~ @template hdoc.succ! p hdoc end double_quoted_heredoc = ["<<#{hdoc}", @template, hdoc].join("\n") eval double_quoted_heredoc, context -- vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407