Online Dyna REPL

_____ __ __ _ _ | __ \ \ \ / / | \ | | /\ | | | | \ \_/ / | \| | / \ | | | | \ / | . ` | / /\ \ | |__| | | | | |\ | / ____ \ |_____/ |_| |_| \_| /_/ \_\ ------------------------------------------------- /\ \ / / \ \ / / \ \ / / \ \ / / \ \ Implemented by / / \ \ Matthew Francis-Landau / / \ \ (2020-2023) / / \ \ / / \ \ / / \ \ / / \ \ / / \ \ / / \ \ / / \ \ / / \ \ / / \ \ / / \ \ / / http://dyna.org \ \ / / \ \ / / \ \ / / https://github.com/argolab/dyna3 \ \ / / \ \ / / \ \ / / \ \/ -------------------------------------------------- REPL commands: quit, reset, run-agenda, clear-agenda Example: a = 1. % define the term `a` with the value 1 a? % query the term `a` fib(0) += 0. % define the fibonacci sequence fib(1) += 1. fib(N) += fib(N-1) for N > 1. fib(N) += fib(N-2) for N > 1. $memo(fib[N:$free]) = "unk". % turn on memoization of the fib/1 terms $priority(fib[N]) = -N. % process smaller fib/1 values first fib(100)? % query for the 100th fibonacci value

Initializing Dyna Runtime

  1. Creating a Java Virtual Machine using WebAssembly powered by Cheerpj
  2. Loading Clojure runtime
  3. Loading Dyna runtime