don't require grep in vc-git
[bpt/emacs.git] / lisp / emacs-lisp / float-sup.el
CommitLineData
5e046f6d
JB
1;;; float-sup.el --- define some constants useful for floating point numbers.
2
ba318903 3;; Copyright (C) 1985-1987, 2001-2014 Free Software Foundation, Inc.
5e046f6d 4
34dc21db 5;; Maintainer: emacs-devel@gnu.org
5e046f6d 6;; Keywords: internal
bd78fa1d 7;; Package: emacs
5e046f6d
JB
8
9;; This file is part of GNU Emacs.
10
d6cba7ae 11;; GNU Emacs is free software: you can redistribute it and/or modify
5e046f6d 12;; it under the terms of the GNU General Public License as published by
d6cba7ae
GM
13;; the Free Software Foundation, either version 3 of the License, or
14;; (at your option) any later version.
5e046f6d
JB
15
16;; GNU Emacs is distributed in the hope that it will be useful,
17;; but WITHOUT ANY WARRANTY; without even the implied warranty of
18;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19;; GNU General Public License for more details.
20
21;; You should have received a copy of the GNU General Public License
d6cba7ae 22;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
5e046f6d
JB
23
24;;; Commentary:
25
26;;; Code:
27
9a0dd02d
GM
28;; Provide an easy hook to tell if we are running with floats or not.
29;; Define pi and e via math-lib calls (much less prone to killer typos).
9e0d4f9e 30(defconst float-pi (* 4 (atan 1)) "The value of Pi (3.1415926...).")
513749ee
SM
31(defconst pi float-pi
32 "Obsolete since Emacs-23.3. Use `float-pi' instead.")
33(internal-make-var-non-special 'pi)
8f92ec4d 34
9e0d4f9e 35(defconst float-e (exp 1) "The value of e (2.7182818...).")
5e046f6d 36
9e0d4f9e 37(defconst degrees-to-radians (/ float-pi 180.0)
5e046f6d 38 "Degrees to radian conversion constant.")
9e0d4f9e 39(defconst radians-to-degrees (/ 180.0 float-pi)
5e046f6d
JB
40 "Radian to degree conversion constant.")
41
9a0dd02d 42;; These expand to a single multiply by a float when byte compiled.
5e046f6d
JB
43
44(defmacro degrees-to-radians (x)
99368725 45 "Convert X from degrees to radians."
9e0d4f9e 46 (list '* degrees-to-radians x))
5e046f6d 47(defmacro radians-to-degrees (x)
99368725 48 "Convert X from radians to degrees."
9e0d4f9e 49 (list '* radians-to-degrees x))
5e046f6d
JB
50
51(provide 'lisp-float-type)
52
53;;; float-sup.el ends here