aboutsummaryrefslogtreecommitdiff
path: root/scm/verbop.scm
diff options
context:
space:
mode:
Diffstat (limited to 'scm/verbop.scm')
-rw-r--r--scm/verbop.scm16
1 files changed, 13 insertions, 3 deletions
diff --git a/scm/verbop.scm b/scm/verbop.scm
index 0fff38f..8308d70 100644
--- a/scm/verbop.scm
+++ b/scm/verbop.scm
@@ -132,6 +132,14 @@ exec ${GUILE-guile} -l $0 -c "(apply $main (command-line))" "$@"
(define (conjugation-set key val)
+ (let ((elt (cond
+ ((not (eq? key #:root))
+ (cons key val))
+ ((and conjugation (assoc (car val) conjugation)) =>
+ (lambda (entry)
+ (set-cdr! entry (cons (cdr val) (cdr entry)))))
+ (else
+ (cons key (list val))))))
(set! conjugation
(if conjugation
- (append conjugation (list (cons key val)))
- (list (cons key val)))))
+ (append conjugation (list elt))
+ (list elt)))))
@@ -224,3 +232,4 @@ VALUES (~Q,~Q,~Q,~Q,~Q)"
(if (eq? (car mood) #:root)
- (let ((val (cdr mood)))
+ (for-each
+ (lambda (val)
(ellinika:sql-query
@@ -232,2 +241,3 @@ VALUES (~Q,~Q,~Q,~Q)"
(cdr val)))
+ (cdr mood))
(let ((mood-str (car mood)))

Return to:

Send suggestions and report system problems to the System administrator.