runIO is:exact

runIO is wrapped around every foreign export and foreign import "wrapper" to mop up any uncaught exceptions. Thus, the result of running exitWith in a foreign-exported function is the same as in the main thread: it terminates the program.
Run an IO action while constructing the spec tree. SpecM is a monad to construct a spec tree, without executing any spec items itself. runIO allows you to run IO actions during this construction phase. The IO action is always run when the spec tree is constructed (e.g. even when --dry-run is specified). If you do not need the result of the IO action to construct the spec tree, beforeAll may be more suitable for your use case.
The runIO function lets you run an I/O computation in the Q monad. Take care: you are guaranteed the ordering of calls to runIO within a single Q computation, but not about the order in which splices are run. Note: for various murky reasons, stdout and stderr handles are not necessarily flushed when the compiler finishes running, so you should flush them yourself.
Evaluate a PandocIO operation.
Run a test suite during test suite definition. This function only exists for backward compatibility. You can also just use liftIO instead.
Launching a receiver and a sender.
Launching a receiver and a sender without workers. Any frames can be sent with sioWriteBytes.
Run an IO action while constructing the spec tree. SpecM is a monad to construct a spec tree, without executing any spec items. runIO allows you to run IO actions during this construction phase. The IO action is always run when the spec tree is constructed (e.g. even when --dry-run is specified). If you do not need the result of the IO action to construct the spec tree, beforeAll may be more suitable for your use case.
Run an IO action without parsing anything This action may be run more than once, so prefer to do IO outside of the parser.
Run a LiterateX transformation using IO This function works with the following input line producers: This function works with the following output line consumers: