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
などの名前を使ってください。
{compat.real-elementary-functions
}
これらは、%
をreal-
で置き換えた組み込み手続きと同じです。
(例: %exp
≡ real-exp
)。
これらの組み込み手続きについては数値の演算を参照してください。
{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専用の対数関数である
fllog
、fllog2
、fllog10
等が定義されています。