From 9e818ad2bf9b2e6335d0797363da260bbd7a9b50 Mon Sep 17 00:00:00 2001 From: Sergiu Ivanov Date: Sun, 23 Feb 2020 12:19:37 +0100 Subject: [PATCH] generic: Add. --- generic.rkt | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 generic.rkt diff --git a/generic.rkt b/generic.rkt new file mode 100644 index 0000000..e6f29b9 --- /dev/null +++ b/generic.rkt @@ -0,0 +1,21 @@ +#lang racket + +;;; dds/generic + +;;; Provides the definition of several generic interfaces for discrete +;;; dynamical systems. + +(require racket/generic) + +(provide + ;; Generics + gen:dds + ;; Functions + (contract-out [dds-step (-> dds? any/c (set/c any/c))]) + ;; Predicates + (contract-out [dds? (-> any/c boolean?)])) + +;;; A discrete dynamical system. +(define-generics dds + ;; Given a state and a dds, produce the next states of the dds. + (dds-step dds state))