From 19ed602c1ba7dc2b933274f50085c9c4f0f1105c Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Sat, 14 Jan 2017 21:44:28 +0000 Subject: one -> net/ricketyspace/sicp --- one/fifteen.scm | 31 ------------------------------- 1 file changed, 31 deletions(-) delete mode 100644 one/fifteen.scm (limited to 'one/fifteen.scm') diff --git a/one/fifteen.scm b/one/fifteen.scm deleted file mode 100644 index 0698bb8..0000000 --- a/one/fifteen.scm +++ /dev/null @@ -1,31 +0,0 @@ -;;;; Under Creative Commons Attribution-ShareAlike 4.0 -;;;; International. See -;;;; . - -(define-module (one fifteen) - #:use-module (ice-9 regex) - #:export (sine)) - -(define (sine angle) - (let ((out "")) - (define (log angle) - (set! out (string-append out " (p (sine " - (number->string (/ angle 3.0))))) - (define (close-parens s) - (string-trim (string-append - s (fold-matches "\\([p,s]" s "" - (lambda (match prev) - (string-append prev ")")))))) - (define (cube x) (* x x x)) - (define (p x) (- (* 3 x) (* 4 (cube x)))) - (define (s angle) - (if (not (> (abs angle) 0.1)) - angle - (begin - (log angle) - (p (s (/ angle 3.0)))))) - (s angle) - (close-parens out))) -;; -;; (sine 12.15) -;; $25 = "(p (sine 4.05 (p (sine 1.3499999999999999 (p (sine 0.44999999999999996 (p (sine 0.15 (p (sine 0.049999999999999996))))))))))" -- cgit v1.2.3