Preliminary cleaning before repairing TagEngine

* clean up state machine in Top
 * `requestTag` method now emits Maybe type
 * put more thought into comments around asynchronous bus
This commit is contained in:
Yehowshua Immanuel 2025-03-24 22:46:42 -04:00
parent 76e542ff36
commit 6e3b3e9178
3 changed files with 67 additions and 43 deletions

View file

@ -57,9 +57,9 @@ interface BusMaster =
-- This has implications about for the implementor of BusMaster, namely, that it
-- should hold its request until it's request method gets called.
request :: BusRequest
-- From the masters's perspective, the response should not be called until
-- the client is ready to accept the response. In other words, response
-- should be guarded by the client.
-- From the masters's perspective, the response should not be called by the
-- arbiter until the master is ready to accept the response. In other words,
-- response should be guarded by the client.
response :: BusResponse -> Action
type Token = UInt 5