[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

elisp - common lisp - new calendrical calculations

From: Benjamin Slade
Subject: elisp - common lisp - new calendrical calculations
Date: Mon, 13 Jun 2011 11:03:50 -0500

I would like to add a "module" to Emacs for converting from Gregorian dates into traditional Indian/Hindu dates (Bikrama Samvat), and, perhaps more importantly, for calculating Hindu holidays.

I found a very nice set of functions for doing so implemented in Common Lisp in *Deshow, Nachum and Reingold, Edward M. 2008. _Calendrical Calculations_. New York: Cambridge University Press, 3rd edn*. What is the best way of using this code in Emacs? I know that Emacs Lisp is different from Common Lisp - and I also know that there is/are package(s?) for using Common Lisp within Emacs.

What I don't know is:
(1) Can this code just be converted into Emacs Lisp? Or are there bits of it which would require Common Lisp?

[Right now it doesn't work - I know that Emacs Lisp requires "defconst" rather than "defconstant", but even changing that, I get a "condition-case: Symbol's value as variable is void: 279457/1080000" error for:

 (defconst hindu-sidereal-year
  ;; TYPE rational
  ;; Mean length of Hindu sidereal year.
  (+ 365 279457/1080000))

And changing the definition to (+ 365 (/ 1080000 279457)) it seems just to round.]

(2) Or else, if it is necessary, how to use Common Lisp packages in Emacs.

I have transcribed the code here: [there are probably typos in it yet].

I'm, obviously, not really a Lisp coder, but I am looking for some pointers for how to get this code working within Emacs.

Benjamin Slade
Dept. of Linguistics
University of Illinois at Urbana-Champaign                 
[ ]                        
Stæfcræft & Vyākaraṇa (lingblog) -
The Babbage Files (techblog) -

  परो ऽक्ष॑कामा हि देवाः
    'The gods love the obscure.' (Śatapathabrāmaṇa

reply via email to

[Prev in Thread] Current Thread [Next in Thread]