+% scheme function for copying/creating fretboard tables
+
+#(define (make-fretboard-table . rest)
+ "Create a new fretboard table. @code{rest} is an optional table name.
+If present, the new fretboard table starts as a copy of the fretboard
+table @code{rest}."
+ (if (null? rest)
+ (make-hash-table 101)
+ (let ((source-table (car rest)))
+ (hash-fold
+ (lambda (key value tab)
+ (hash-set! tab key value)
+ tab)
+ (make-hash-table 101)
+ source-table))))
+