ASC

Asynchronous Software Components

Dispatcher

Components cannot call one another, the Dispatcher invokes components when they are ready and not-busy.

ASC Construction

ASC are built in two stages:55

  • Template
  • Runnable.

Templates can be combined repeatedly to make new templates.

I think of templates as diagrams.

(Diagrams have the “nice” property of showing leakage (dependencies) between Components).

Delegation

Template combination is the process of adding delegate connections to the new template.

For example, to combine hwhello and hwsub to make hw23, we tell hwsub/c/1 (the first child of hwsub) to delegate all of it inputs to hwhello’s inputs and to delegate all outputs from hwhello into hwsub/c/1’s outputs.

(see https://github.com/guitarvydas/asc-manually/blob/master/v2/hw23.lisp and the associated files in that directory)

Overview of Template Combination and Running

<?xml version=”1.0” encoding=”UTF-8”?>
<!DOCTYPE svg PUBLIC “-//W3C//DTD SVG 1.1//EN” “http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd”>

diagram
diagram
diagram compiler
(Arrowgrams)
diagram compiler<br>(Arrowgrams)
JSON
(graph)
JSON<br>(graph)
runtime
runtime
Template (2)
Template (2)
Template (3)
Template (3)
+
[Not supported by viewer]
Template (23)
Template (23)
Template (1)
Template (1)
+
[Not supported by viewer]
Template (123)
Template (123)
Runnable
Runnable
+
[Not supported by viewer]
Final App
Final App

Overview of Runnable

fetch
fetch
upwards
upwards
head
head
tail
tail
inwards
inwards
asc
asc
children
children
outside
outside

See Also

References
Table of Contents