#!/usr/local/bin/clisp ;(setq lisp:*args* '("(5 24 5759)")) ;;; calculate yahrzeit. ;;; usage: test.cl "( mo day year )" ;;; Returns the Gregorian date and Parshah ;;; (if (equal (machine-instance) "mkultra [192.168.64.52]") (progn (load 'yc.cl)) (progn (load '/usr/home/yi/lisp/yahrweb.cl))) ;(format t "~%") (setq my-date (read-from-string (car lisp:*args*))) (defun yahr-dates (y-date) (let* ( (yahr-abs (hebrew-calendar-yahrzeit y-date 5760)) (yahr-greg (calendar-gregorian-from-absolute yahr-abs)) (my-dow (calendar-day-of-week yahr-greg)) (date (calendar-gregorian-from-absolute (- yahr-abs (if (= my-dow 6) 0 (1+ my-dow))) )) ); adjust to previous shb. (declare (special date )) (format t "~A~%~A~%" (calendar-date-string yahr-greg) (diary-parasha)))) ;(trace (yahr-dates :step-if t)) (yahr-dates my-date) ;(list-yahrzeit-dates (list 10 17 1974) 2000) (5 24 5759)