@@ -233,9 +233,9 @@ g: func(s: stream<T>) -> stuff;
233233```
234234` g(f(x)) ` works as you might hope, concurrently streaming ` x ` into ` f ` which
235235concurrently streams its results into ` g ` . If ` f ` has an error, it can close
236- its returned ` stream<T> ` with an [ ` error ` ] ( Explainer.md#error-type ) value
237- which ` g ` will receive along with the notification that its readable stream
238- was closed.
236+ its returned ` stream<T> ` with an [ ` error-context ` ] ( Explainer.md#error-context- type )
237+ value which ` g ` will receive along with the notification that its readable
238+ stream was closed.
239239
240240If a component instance * would* receive the readable end of a stream for which
241241it already owns the writable end, the readable end disappears and the existing
@@ -516,7 +516,8 @@ For now, this remains a [TODO](#todo) and validation will reject `async`-lifted
516516
517517Native async support is being proposed incrementally. The following features
518518will be added in future chunks roughly in the order list to complete the full
519- "async" story:
519+ "async" story, with a TBD cutoff between what's in [ WASI Preview 3] and what
520+ comes after:
520521* ` nonblocking ` function type attribute: allow a function to declare in its
521522 type that it will not transitively do anything blocking
522523* define what ` async ` means for ` start ` functions (top-level await + background
@@ -529,6 +530,8 @@ will be added in future chunks roughly in the order list to complete the full
529530* some way to say "no more elements are coming for a while"
530531* ` recursive ` function type attribute: allow a function to be reentered
531532 recursively (instead of trapping) and link inner and outer activations
533+ * add ` stringstream ` specialization of ` stream<char> ` (just like ` string ` is
534+ a specialization of ` list<char> ` )
532535* allow pipelining multiple ` stream.read ` /` write ` calls
533536* allow chaining multiple async calls together ("promise pipelining")
534537* integrate with ` shared ` : define how to lift and lower functions ` async ` * and*
@@ -572,3 +575,5 @@ will be added in future chunks roughly in the order list to complete the full
572575[ stack-switching ] : https://github.com/WebAssembly/stack-switching/
573576[ JSPI ] : https://github.com/WebAssembly/js-promise-integration/
574577[ shared-everything-threads ] : https://github.com/webAssembly/shared-everything-threads
578+
579+ [ WASI Preview 3 ] : https://github.com/WebAssembly/WASI/tree/main/wasip2#looking-forward-to-preview-3
0 commit comments