_____ __ __ _ _
| __ \ \ \ / / | \ | | /\
| | | | \ \_/ / | \| | / \
| | | | \ / | . ` | / /\ \
| |__| | | | | |\ | / ____ \
|_____/ |_| |_| \_| /_/ \_\
------------------------------------------------- /\
\ / / \
\ / / \
\ / / \
\ / / \
\ 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