From ca1584a5c87c2952af08c74ce80b1cb2a75a1d19 Mon Sep 17 00:00:00 2001 From: Masaya Tojo Date: Thu, 13 Jun 2024 02:11:07 +0900 Subject: Rename modules from ( ... make) to () --- algebraic-structures.group.scm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 algebraic-structures.group.scm (limited to 'algebraic-structures.group.scm') diff --git a/algebraic-structures.group.scm b/algebraic-structures.group.scm new file mode 100644 index 0000000..6e38eaf --- /dev/null +++ b/algebraic-structures.group.scm @@ -0,0 +1,16 @@ +(functor ((algebraic-structures group) (M (<> unit inv))) + (<> unit inv pow) + (import M + scheme + (chicken base)) + + (define (pow x n) + (assert (exact-integer? n)) + (if (negative? n) + (pow (inv x) (- n)) + (let loop ((i n) + (acc unit)) + (if (= i 0) + acc + (loop (sub1 i) + (<> acc x))))))) -- cgit v1.2.3