summaryrefslogtreecommitdiff
path: root/Examples/guile/simple/example.scm
blob: 9408b1aa6601ea0a3282722d40942fd177036d8c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
;;; example.scm

(define (mdisplay-newline . args)       ; does guile-1.3.4 have `format #t'?
  (for-each display args)
  (newline))

(mdisplay-newline (get-time) "My variable = " (My-variable))

(do ((i 0 (1+ i)))
    ((= 14 i))
  (mdisplay-newline i " factorial is " (fact i)))

(define (mods i imax j jmax)
  (if (< i imax)
      (if (< j jmax)
          (begin
            (My-variable (+ (My-variable) (mod i j)))
            (mods i imax (+ j 1) jmax))
          (mods (+ i 1) imax 1 jmax))))

(mods 1 150 1 150)

(mdisplay-newline "My-variable = " (My-variable))

(exit (and (= 1932053504 (fact 13))
           (= 745470.0 (My-variable))))

;;; example.scm ends here