Mercurial > hg > xemacs-beta
comparison lisp/prim/float-sup.el @ 2:ac2d302a0011 r19-15b2
Import from CVS: tag r19-15b2
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:46:35 +0200 |
parents | 376386a54a3c |
children |
comparison
equal
deleted
inserted
replaced
1:c0c6a60d29db | 2:ac2d302a0011 |
---|---|
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
18 ;; General Public License for more details. | 18 ;; General Public License for more details. |
19 | 19 |
20 ;; You should have received a copy of the GNU General Public License | 20 ;; You should have received a copy of the GNU General Public License |
21 ;; along with XEmacs; see the file COPYING. If not, write to the Free | 21 ;; along with XEmacs; see the file COPYING. If not, write to the Free |
22 ;; Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | 22 ;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA |
23 ;; 02111-1307, USA. | |
23 | 24 |
24 ;;; Synched up with: FSF 19.30. | 25 ;;; Synched up with: FSF 19.34. |
26 | |
27 ;;; Code: | |
25 | 28 |
26 ;; Provide a meaningful error message if we are running on | 29 ;; Provide a meaningful error message if we are running on |
27 ;; bare (non-float) emacs. | 30 ;; bare (non-float) emacs. |
28 ;; Can't test for 'floatp since that may be defined by float-imitation | 31 ;; Can't test for 'floatp since that may be defined by float-imitation |
29 ;; packages like float.el in this very directory. | 32 ;; packages like float.el in this very directory. |
30 | 33 |
34 ;; XEmacs change | |
31 (or (featurep 'lisp-float-type) | 35 (or (featurep 'lisp-float-type) |
32 (error "Floating point was disabled at compile time")) | 36 (error "Floating point was disabled at compile time")) |
33 | 37 |
34 ;; define pi and e via math-lib calls. (much less prone to killer typos.) | 38 ;; define pi and e via math-lib calls. (much less prone to killer typos.) |
39 ;; XEmacs change (purecopy) | |
35 (defconst pi (purecopy (* 4 (atan 1))) "The value of Pi (3.1415926...)") | 40 (defconst pi (purecopy (* 4 (atan 1))) "The value of Pi (3.1415926...)") |
36 (defconst e (purecopy (exp 1)) "The value of e (2.7182818...)") | 41 (defconst e (purecopy (exp 1)) "The value of e (2.7182818...)") |
37 | 42 |
38 ;; Careful when editing this file ... typos here will be hard to spot. | 43 ;; Careful when editing this file ... typos here will be hard to spot. |
39 ;; (defconst pi 3.14159265358979323846264338327 | 44 ;; (defconst pi 3.14159265358979323846264338327 |
40 ;; "The value of Pi (3.14159265358979323846264338327...)") | 45 ;; "The value of Pi (3.14159265358979323846264338327...)") |
41 | 46 |
47 ;; XEmacs change (purecopy) | |
42 (defconst degrees-to-radians (purecopy (/ pi 180.0)) | 48 (defconst degrees-to-radians (purecopy (/ pi 180.0)) |
43 "Degrees to radian conversion constant") | 49 "Degrees to radian conversion constant") |
44 (defconst radians-to-degrees (purecopy (/ 180.0 pi)) | 50 (defconst radians-to-degrees (purecopy (/ 180.0 pi)) |
45 "Radian to degree conversion constant") | 51 "Radian to degree conversion constant") |
46 | 52 |
47 ;; these expand to a single multiply by a float | 53 ;; these expand to a single multiply by a float when byte compiled |
48 ;; when byte compiled | |
49 | 54 |
50 (defmacro degrees-to-radians (x) | 55 (defmacro degrees-to-radians (x) |
51 "Convert ARG from degrees to radians." | 56 "Convert ARG from degrees to radians." |
52 (list '* (/ pi 180.0) x)) | 57 (list '* (/ pi 180.0) x)) |
53 (defmacro radians-to-degrees (x) | 58 (defmacro radians-to-degrees (x) |
54 "Convert ARG from radians to degrees." | 59 "Convert ARG from radians to degrees." |
55 (list '* (/ 180.0 pi) x)) | 60 (list '* (/ 180.0 pi) x)) |
56 | 61 |
62 ;; Provided in C code in XEmacs | |
63 ;; (provide 'lisp-float-type) | |
64 | |
57 ;;; float-sup.el ends here | 65 ;;; float-sup.el ends here |