From 3ab48119dd91fc26fd34c9964538027fa22b460d Mon Sep 17 00:00:00 2001 From: Masaya Tojo Date: Sat, 15 Jun 2024 03:45:15 +0900 Subject: Add reducible --- algebraic-structures.reducible.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 algebraic-structures.reducible.scm (limited to 'algebraic-structures.reducible.scm') diff --git a/algebraic-structures.reducible.scm b/algebraic-structures.reducible.scm new file mode 100644 index 0000000..ce9d1b3 --- /dev/null +++ b/algebraic-structures.reducible.scm @@ -0,0 +1,20 @@ +(functor ((algebraic-structures reducible) (R (reduce))) + (reduce + maximum + minimum) + (import scheme + R) + + (define (minimum xs less?) + (reduce (lambda (e acc) + (if (less? e acc) + e + acc)) + xs)) + + (define (maximum xs less?) + (reduce (lambda (e acc) + (if (less? e acc) + acc + e)) + xs))) -- cgit v1.2.3