diff --git a/marketplace/scribblings/concepts.scrbl b/marketplace/scribblings/concepts.scrbl index 38f52c7..8969df7 100644 --- a/marketplace/scribblings/concepts.scrbl +++ b/marketplace/scribblings/concepts.scrbl @@ -81,6 +81,10 @@ structures. actions the process wishes to perform. See @secref{Actions} for the possible actions a process can take. +Note that the result of an event handler function is actually a +@racket[Transition] structure; the actual Typed Racket type of event +handlers is @racket[TrapK], defined in @secref{handler-functions}. + @section{What is a VM?} @deftech[#:key "vm"]{Virtual Machines (VMs)} are simply a collection @@ -135,6 +139,8 @@ Roles have three parts: ] +@section[#:tag "messages-and-topics"]{Messages and Topics} + @deftech{Messages} are simply Racket data structures. They can be any value for which @racket[equal?] is defined, any @racket[#:prefab] structure, most @racket[#:transparent] structures, or any non-object diff --git a/marketplace/scribblings/highlevel.scrbl b/marketplace/scribblings/highlevel.scrbl index 16a11b3..342eb0e 100644 --- a/marketplace/scribblings/highlevel.scrbl +++ b/marketplace/scribblings/highlevel.scrbl @@ -96,15 +96,6 @@ its state type). } -@section{Constructing topics and roles} - -As previously mentioned, @tech{topics} are ordinary Racket values -which may have embedded wildcards. The identifier @racket[?] produces -a fresh wildcard value for use in topic patterns. - -For example, -TODO - @section{Constructing transitions} **** transition, transition:, transition/no-state **** cons-trees of actions; null, false, void; use of (when) @@ -113,6 +104,7 @@ TODO @section{Actions} **** Communication-related ***** endpoint, endpoint: +[#:tag "endpoint-dsl"] ***** delete-endpoint ***** send-message ***** send-feedback diff --git a/marketplace/scribblings/lowlevel.scrbl b/marketplace/scribblings/lowlevel.scrbl index 7e20b0e..1dd1f3c 100644 --- a/marketplace/scribblings/lowlevel.scrbl +++ b/marketplace/scribblings/lowlevel.scrbl @@ -18,7 +18,7 @@ the @emph{system call interface} of a Unix-like operating system. The @secref{high-level-interface} corresponds to the @emph{C library interface} of a Unix-like operating system. -@section{Handler Functions} +@section[#:tag "handler-functions"]{Handler Functions} Each @deftech{handler function} is always associated with a particular @tech{endpoint}, registered with the VM via