- From: Per Bothner <per@bothner.com>
- Date: Wed, 23 Jun 2004 08:47:47 -0700
- To: Michael Kay <mhk@mhk.me.uk>
- Cc: "'Liam Quin'" <liam@w3.org>, public-qt-comments@w3.org
Michael Kay wrote: >>declare variable $x { $y }; >>declare variable $y { 10 }; >>$x + $y >> >>Is this portable, implementation-defined, or neither? >>What about more complex expressions that depend on >>lazy evaluation? > > This example doesn't depend on lazy evaluation. It places some demands on > the order of evaluation, but that's not the same thing. Lazy evaluation is > just one strategy for handling this. It's not the same, but lazy evaluation does make this example well-defined. Compile-time re-ordering also makes it well-defined, but it can be tricky to implement *and* specify when crossing module boundaries. So the question remains: is the example portable, implementation-defined, or neither? -- --Per Bothner per@bothner.com http://per.bothner.com/
Received on Wednesday, 23 June 2004 11:47:52 UTC