In my experience writing a lexer for Perl (for use in syntax styling editors), 'here documents' and arbitrary quote sequences add much complexity to a lexer. The full generality of stacked here documents is a real pain to deal with: print <<"foo", <<"foo"; # you can stack them I said foo. foo I said bar. foo Neil