Skip to content

Commit ac003c1

Browse files
committed
Improve explanation of sync-and-async-functions definition
1 parent d740f99 commit ac003c1

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

design/mvp/Async.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -117,12 +117,14 @@ async support.
117117

118118
### Sync and Async Functions
119119

120-
An "async" function is a component-level function that has been [lifted]
121-
with the `async` option set. Symmetrically, a "sync" function is a
122-
component-level function that does not have the `async` option set (which is
123-
the default and only option prior to Preview 3). The sync/async distinction
124-
does not appear in the function type and thus any given WIT function type can
125-
be implemented with either a sync or async function.
120+
The distinction between sync and async functions does not appear in the
121+
component-level function type (nor in WIT). Rather, an "async" function is a
122+
component-level function that has been [lifted] from Core WebAssembly with the
123+
`async` option set. Symmetrically, a "sync" function is a component-level
124+
function that does not have the `async` option set (which is the default and
125+
only option prior to Preview 3). Thus, the sync/async distinction appears
126+
only independently in how a component-level function is *implemented* or
127+
*called*.
126128

127129
### Task
128130

0 commit comments

Comments
 (0)