The behavior you desire is not supported. A browser does not behave like a terminal. You can't just "print" to it and have things show up in sequential order.

If you're trying to get "status" messages out to the browser before the HTML (and after you've printed the Content-type: header), one option is to print the status messages as HTML comments, then examine the resulting source to see the status messages. The resulting source would look like

<!-- status: input buffers are out of cheese --> <!-- status: rendering algorithm is full of fleas --> <html> ... </html>

Now if your purpose it to show a temporary message on the browser while you perform some longer operation that'll result later in a page of HTML, merlyn just happens to have an article that shows one way to do it.

Update: I should have said "not universally supported." It's true that some browsers can be coaxed into printing text that appears outside of <html>..</html> tags, but any solution that depends on this is neither horizontally portable (across browsers) or temporally portable (across new browser releases).


In reply to Re: unbuffering I/O with objects by dws
in thread unbuffering I/O with objects by geektron

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.