Goals

  1. Define ASC syntax.
  2. Transpile ASC to alist form (in Lisp, in Python, etc.)
  3. Produce example diagram->concurrentLambda code
  4. Intermediate tools.

ASC means “Asynchronous Software Component”.

Status

1. Define ASC Syntax

First cut done. See lookup.asc. (below)

2. Transpile ASC

Working on this, see section 2.0 below.

3. Produce Example

First cut done and working. Hand-compiled from lookup.drawio to lookup.lisp.

4. Intermediate Tools

Prep

Done1. Prep

DaS To Python

Done. DaS

More Details

1.0 ASC Syntax

lookup.asc

2.0 Transpile ASC

working in asca working directory

see Makefile, make dev

goal: transpile asc “assembler” to lisp lookup.ascto something like lookup.proto.lisp

sub-goal

  • tokenize lookup.asca to lookup.asct
  • [working on this] write Ohm-JS grammar to parse tokens
  • [future] write .fmt file to output .lisp, .py, etc. alists

    3.0 Produce Example of Concurrent Lambdas

    see working paper 2022-03-20-Concurrent Lambdas.

See Also

Table of Contents
Blog
Videos
References
Books

  1. “Done” in this context means “experimentally usable”. Not necessarily production quality. I would be happy to transfer this stuff to maintainers.