HoldMyType<p>Running the manual: an approach to high-assurance microkernel development<br>> the kernel is obviously a state<br>transformer, and hence, conveniently represented as a monad. This<br>choice is reaffirmed by the need for recoverable exceptions, which<br>are detailed in the next subsection. In fact, we will see that we want<br>to distinguish between code that may raise recoverable exceptions<br>and code that does not have that liberty. Hence, it is worthwhile<br>to use monad transformers as provided by the MTL in the Haskell<br>Hierarchical Libraries <br>> seL4 API includes several system calls that<br>attempt to manipulate a capability address space, which is a data<br>structure containing a sparse mapping from addresses to capabili-<br>ties. If one of these system calls fails to locate a specified capability,<br>it will generate a system call error that is returned to the caller. On<br>the other hand, a similar failure while searching for a capability that<br>is being directly invoked will generate a fault message that is sent<br>to the current thread’s fault handler; a failure while trying to trans-<br>mit a capability through a one-way communication channel will be<br>silently ignored when the receiver is unable or unwilling to receive<br>the capability.<br>> HOL is a logic of total functions and is as such not suitable to ex-<br>press the semantics of Haskell directly. It is however suitable to<br>describe the semantics of Haskell functions that always terminate<br>and that do not make essential use of laziness. The seL4 implemen-<br>tation consists of such functions.</p><p><a href="https://mathstodon.xyz/tags/haskell" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>haskell</span></a> <a href="https://mathstodon.xyz/tags/isabelle" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>isabelle</span></a> <a href="https://mathstodon.xyz/tags/sel4" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sel4</span></a><br><a href="http://portal.acm.org/citation.cfm?id=1159842.1159850&coll=portal&dl=ACM&type=series&idx=1159842&part=Proceedings&WantType=Proceedings&title=Haskell&CFID=18785943&CFTOKEN=93152956" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">http://</span><span class="ellipsis">portal.acm.org/citation.cfm?id</span><span class="invisible">=1159842.1159850&coll=portal&dl=ACM&type=series&idx=1159842&part=Proceedings&WantType=Proceedings&title=Haskell&CFID=18785943&CFTOKEN=93152956</span></a></p>