Newsgroups: | comp.compilers |
From: | bobduff@world.std.com (Robert A Duff) |
Keywords: | C++, optimize |
Organization: | The World Public Access UNIX, Brookline, MA |
References: | 95-08-034 95-08-135 |
Date: | Mon, 21 Aug 1995 16:19:15 GMT |
Henry Baker <hbaker@netcom.com> wrote:
>Since I started this thread, I have noticed that it has veered considerably
>off course.
Yeah. That tends to happen on the net. ;-)
>...Although I agree with David Chase that the issue of left-to-right v.
>right-to-left is silly, I was willing to punt on that particular issue.
>However, if I have to worry about various breadth-first or other non-depth
>first orderings, then things get _a lot_ more complicated. In particular,
>one has to start worrying about _locking_ between the multiple 'threads'
>of the various argument expressions.
I thought somebody clearly answered that this interleaving is not
allowed in C++. I know it's not allowed in Ada (83 or 95). I
completely agree with you -- you don't want to have to do locking when
you haven't put any threads in your program! For example (in Ada
syntax):
P(new T, new T);
where the user has written a user-defined allocator, the user should not
have to make that allocator do locking, if it's only used within one
task. I don't care which one is allocated first, but it had better not
interleave the allocator calls.
- Bob
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.