diff --git a/member-parser.scm b/member-parser.scm index a602429..96ffd1c 100644 --- a/member-parser.scm +++ b/member-parser.scm @@ -60,19 +60,11 @@ (kind (if (member key '(studentstart studentstop)) 'student 'suspend))) - (let loop ((values value) - (mr mr)) - (if (null? values) - mr - (let ((value (car values))) - (loop (cdr values) - (member-record-sub-prepend - mr - output - kind - (list marker - (string->month (car value)) - (cdr value))))))))) + (foldl (lambda (mr value) + (member-record-sub-prepend + mr output kind + (list marker (string->month (car value)) (cdr value)))) + mr value))) (else (member-record-sub-set mr output key value))))) (info