coroutine<T> -> asymmetric_coroutine<T>
update appendix - example assembler code for jump
example ofrecusrive SAX parsing added
formating old ASIO example
use namespace std instead boost
some mods
some mods regading to section Design
some mods
Update sax_parsing.cpp example. Add descriptive text.
Merge pull request #1 from nat-goodspeed/develop

Update sax_parsing.cpp example. Add descriptive text.
Editorial pass through proposal document.

Removed prior document number, updated Date: header.

Borrowed updated wording about the distinction between asymmetric and
symmetric coroutines from Boost.Coroutine documentation.

Changed 'the runtime' to 'the library,' as the entity that synthesizes the
complementary coroutine object. ISO committee members might think we're trying
to alter the generic C++ runtime library, instead of describing behavior added
with the coroutine library.

When discussing special handling for movable types, replaced 'move-assignable'
with 'move-only'. I don't know how Boost.Coroutine decides whether to copy or
move a given type, but in my opinion, a type which can be both moved and
copied should not be subject to the special restriction (2nd move throws).

This edit is only opinion: you may prefer to change 'move-only' back to
'move-assignable' so that any type that can be moved will be moved, whether or
not it can also be copied.

Specifying the default initial stack size might be viewed as a requirement on
implementations. I removed it.

In "The main context may never pass another data value," changed "may" to
"might." We would not want the committee to think the main-context is
forbidden to pass another value.

Described individually the effects of returning from the coroutine-function
of a pull_type, push_type or call_type coroutine.

The subsubsection about coroutine_errc was duplicated. Removed one instance.

Removed an assertion that pull_type::get() does not throw -- since it might.

Added mention of clang 3.4+ as supporting segmented stacks.

Added a few words about N3694.

Since asymmetric_coroutine<>::pull_type::operator()() returns *this, no need
to write 'while (events(), events)' -- we can simply write 'while (events())'.

Replaced boost::coroutines namespace in example code with std namespace.
Fix line breaks disarranged by previous commit.

Update document date again.
Merge pull request #2 from nat-goodspeed/develop

See commit comments for 96513a439439d.
Clarify the notes concerning InputIterator and OutputIterator.
Merge pull request #3 from nat-goodspeed/develop

Clarify the notes concerning InputIterator and OutputIterator.
changes suggested by Daniel Kruegler
add changes to previous proposal
remove dot
move change-history
new heading 'Revision History'