Blame


1 665c255d 2023-08-04 jrmu (defun ripple-carry-adder (la lb ls c)
2 665c255d 2023-08-04 jrmu (let ((n (length la)))
3 665c255d 2023-08-04 jrmu (unless (= n (length lb) (length ls))
4 665c255d 2023-08-04 jrmu (error "Expecting all lists of same length"))
5 665c255d 2023-08-04 jrmu (labels ((ripple-build (la lb lcin ls lcout)
6 665c255d 2023-08-04 jrmu (unless (null la)
7 665c255d 2023-08-04 jrmu (full-adder (car la) (car lb) (car lcin)
8 665c255d 2023-08-04 jrmu (car ls) (car lcout))
9 665c255d 2023-08-04 jrmu (ripple-build (cdr la) (cdr lb) (cdr lcin)
10 665c255d 2023-08-04 jrmu (cdr ls) (cdr lcout)))))