Abstract:
While searching for a mechanism for combining free constructs and cofree interpreters with monad-comonad adjunctions for GUIs ((Freeman, 2017) and (Xavier, Da, Bigonha, & Freeman, 2018)) to permit transitioning the state cursor of a GUI application and constructing a DSL using free monads for this state cursor transition that is later on given Haskell semantics through string diagrams (Coecke & Kissinger, 2018) we arrived at the problem of enhancing usability of the solution beyond the advantages given by composability as a means of reducing complexity.
The semantics of string diagrams are limited in the degrees of freedom available to them to enhance the "intuition" of the user because of their 2D structure and lack of semantics for positioning. We explore here similar semantics in a 3D space using the idea that data types are "circles" positioned at some sort of "distance" from a conscious observer that gravitate towards a "center" given by an "inputoutput" tensor, much like magnetic fields around a coil. The combination gives birth to a torus shape where programs are closed transversal loops that merge into "vortexes" (or "spirals") on the surface of the torus. Enhancement the intuition is then available when giving semantics to size, rotation speeds, traversal speed, color, sound - in a consistent manner - in a VR environment.
The semantics of string diagrams are limited in the degrees of freedom available to them to enhance the "intuition" of the user because of their 2D structure and lack of semantics for positioning. We explore here similar semantics in a 3D space using the idea that data types are "circles" positioned at some sort of "distance" from a conscious observer that gravitate towards a "center" given by an "inputoutput" tensor, much like magnetic fields around a coil. The combination gives birth to a torus shape where programs are closed transversal loops that merge into "vortexes" (or "spirals") on the surface of the torus. Enhancement the intuition is then available when giving semantics to size, rotation speeds, traversal speed, color, sound - in a consistent manner - in a VR environment.