| ... | @@ -467,6 +467,10 @@ new library calls provided |
... | @@ -467,6 +467,10 @@ new library calls provided |
|
|
|
|
|
|
|
- `mergeIO`, `nmergeIO`
|
|
- `mergeIO`, `nmergeIO`
|
|
|
|
|
|
|
|
|
|
|
|
|
Possibly: define the meaning of using concurrent and/or reentrant foreign calls with `unsafePerformIO` (see below)?
|
|
|
|
|
|
|
|
|
|
|
## Optional Feature 2 - OS threads
|
|
## Optional Feature 2 - OS threads
|
|
|
|
|
|
|
|
|
|
|
| ... | @@ -495,9 +499,18 @@ this might be an issue for you. |
... | @@ -495,9 +499,18 @@ this might be an issue for you. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Using concurrent operations inside of an unsafePerformIO or unsafeInterleaveIO
|
|
The following operations inside `unsafePerformIO` are undefined:
|
|
|
may have unforseen consequences, check an implementations documentation for
|
|
|
|
|
details before depending on any particular behavior.
|
|
|
|
|
|
- concurrent or reentrant foreign calls
|
|
|
|
- I/O operations
|
|
|
|
|
|
|
|
|
|
|
|
Additionally, foreign imports that are both declared to return a non-IO type and declared concurrent and/or reentrant are undefined.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Check an implementation's documentation for details before depending on any particular behavior.
|
|
|
|
|
|
|
|
|
|
|
|
|
# Status of Compilers
|
|
# Status of Compilers
|
| ... | | ... | |