implement transcendental sin, cos etc in c; deprecate $sin, $cos, etc
authorAndy Wingo <wingo@pobox.com>
Thu, 3 Sep 2009 20:29:10 +0000 (22:29 +0200)
committerAndy Wingo <wingo@pobox.com>
Thu, 3 Dec 2009 14:27:35 +0000 (15:27 +0100)
commitad79736c68a803a59814fbfc0cb4b092c2b4cddf
tree912f8bb670bae32bfe48b2b0e7dc73491168a9bd
parent6fc4d0124d633d1b3ddc5af82967f23bd17556f8
implement transcendental sin, cos etc in c; deprecate $sin, $cos, etc

* libguile/deprecated.h:
* libguile/deprecated.c (scm_asinh, scm_acosh, scm_atanh): Deprecate
  these stand-ins for the C99 asinh, acosh, and atanh functions. Guile
  is not gnulib.
  (scm_sys_atan2): Deprecate as well, in favor of scm_atan.

* libguile/numbers.h:
* libguile/numbers.c (scm_sin, scm_cos, scm_tan)
  (scm_sinh, scm_cosh, scm_tanh)
  (scm_asin, scm_acos, scm_atan)
  (scm_sys_asinh, scm_sys_acosh, scm_sys_atanh): New functions,
  replacing the combination of dsubrs and boot-9 wrappers with C subrs
  that handle complex values. The latter three have _sys_ in their names
  due to the name conflict with the deprecated scm_asinh et al.

  Remove the $abs, $sin etc "dsubrs".

* module/ice-9/boot-9.scm: Remove transcendental functions, as this all
  happens in C now.

* module/ice-9/deprecated.scm: Add aliases for $sin et al.

* test-suite/tests/ramap.test ("array-map!"): Adjust "dsubr" tests to
  use sqrt, not $sqrt. They don't actually test dsubrs now. In the
  two-source test, I'm pretty sure the dsubr array-map! should have been
  failing, as indeed it does now; I've changed the test case to expect
  the failure. I'd still like to know why it was succeeding before.
libguile/deprecated.c
libguile/deprecated.h
libguile/numbers.c
libguile/numbers.h
module/ice-9/boot-9.scm
module/ice-9/deprecated.scm
test-suite/tests/ramap.test