Megatest

Diff
Login

Differences From Artifact [9ec33d98cf]:

To Artifact [a5f23f82ed]:


10
11
12
13
14
15
16
17

18
19
20
21
22
23
24
25
26
27
28
29
30
10
11
12
13
14
15
16

17
18
19
20
21
22

23
24
25
26
27
28
29







-
+





-







;; This is from the perl world, a hash of hashes is a super easy way to keep a handle on
;; lots of disparate data
;;

(module mutils
    *

  (import chicken scheme
  (import (chicken  base) (chicken io) scheme
	  ;; data-structures posix
	  srfi-1
	  ;; srfi-13
	  srfi-69
	  ;; ports
	  extras
	  regex
	  )

(define (mutils:hierhash-ref hh . keys)
  (if (null? keys)
      #f
      (let loop ((ht   hh)
85
86
87
88
89
90
91
92

93
94
95
96
97
98
99
84
85
86
87
88
89
90

91
92
93
94
95
96
97
98







-
+







      (if (eof-object? l)
	  (reverse res)
	  (if (or (string-match comment l)
		  (string-match blank l))
	      (loop (read-line fh) res)
	      (loop (read-line fh) (cons l res)))))))

(use sparse-vectors)
(import sparse-vectors)

;; this is a simple two dimensional sparse array

;; ONLY TWO DIMENSIONS!!! SEE ARRAY-LIB IF YOUR NEEDS ARE GREATER!!
;;
(define (mutils:make-sparse-array)
  (let ((a (make-sparse-vector)))