in reply to Re^3: The behavior is [sic] undefined
in thread The behavior is [sic] undefined

The difference is that after the fact--ie. once the program is implemented and you can try a scenario and see empirically what happens--what happens is no longer undefined.
Even if you can determine what's happening from a finite number of runs, all you can do is study the behaviour of existing implementations.

But the phrase the behaviour is undefined is much stronger than that. It says something about any other possible implementation; specifically, it says that you cannot determine the behaviour of a particular implementation by looking at other implementations.

And don't come with "but there's only one implementation of [Pp]erl". There isn't. 5.10.0 differs from 5.8.9. And 5.10.1 will differ from 5.10.0. Even 5.10.0 build with options X, Y, and Z on platform W will differ from 5.10.0 build with options A, B, C on platform D.

Replies are listed 'Best First'.
Re^5: The behavior is [sic] undefined
by BrowserUk (Patriarch) on May 15, 2009 at 11:03 UTC
    But the phrase the behaviour is undefined is much stronger than that.

    I understand what it is intended to mean; but it fails in that intent. Please see Re^5: The behavior is [sic] undefined.

    Once an implementation exists its behaviour is defined--by the implementation itself. And the behaviour of all implementations is defined by their implementations. Those behaviours that are unspecified may differ between implementations, but they are defined.


    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.