For Development HEAD DRAFTSearch (procedure/syntax/module):

12.5 compat.real-elementary-functions - 後方互換な実数初等関数

Module: compat.real-elementary-functions

Gauche 0.9.12とそれ以前のバージョンでは、正式にドキュメントされていませんでしたが、 実数のみを対象とした%sin%expといった初等関数が提供されていました。 複素数までを対象にした初等関数はそれらの上に構築されていて、 実数対象バージョンは内部ルーチンという意図でした(なので%が頭についています)が、 gaucheモジュールで見えるようになっていたのと、複素数バージョンより速かったので、 過去のコードでこれらの関数を直接呼んでいるコードがあります。

SRFI-94で、実数のみ対象の初等関数にreal-sinなどの名前が規定されたので、 0.9.13から%sinなどをreal-sinにリネームした上で正式にドキュメントしました。 数値の演算に説明があります。

このモジュールは、古い名前を使っている既存のコードからの移行を補助するためのものです。 次のフォームを付け加えてやれば、古いコードはどのバージョンのGaucheでも動きます。

(cond-expand
  [(library (compat real-elementary-functions))
   (use compat.real-elementary-functions)]
  [else])

新規コードは、このモジュールにある名前ではなくreal-sinなどの名前を使ってください。

Function: %exp x
Function: %sin x
Function: %cos x
Function: %tan x
Function: %sinpi x
Function: %cospi x
Function: %tanpi x
Function: %asin x
Function: %acos x
Function: %atan x
Function: %sinh x
Function: %cosh x
Function: %tanh x
Function: %sqrt x
Function: %expt x a

{compat.real-elementary-functions} これらは、%real-で置き換えた組み込み手続きと同じです。 (例: %expreal-exp)。 これらの組み込み手続きについては数値の演算を参照してください。

Function: %log x :optional base

{compat.real-elementary-functions} これは実数のみを対象とした、baseを底とするxの対数関数です。 xは非負実数、baseは正の実数でなければなりません baseが省略された時はネイピア数が使われます。 すなわち、xの自然対数を返します。 xが0の時は-inf.0が返されます。

Gaucheは組み込みではreal-logを提供しません。 SRFI-94が底を第一引数にするreal-logをを定義しているので、混同を避けるためです。 実数対象の自然対数には、組み込みのreal-lnが使えます。

また、scheme.flonum - R7RS flonumには、flonum専用の対数関数である fllogfllog2fllog10等が定義されています。



For Development HEAD DRAFTSearch (procedure/syntax/module):
DRAFT