Discussion:
[ast-developers] No exp10() in ksh93 arithmetic?
Lionel Cons
2013-02-04 14:37:45 UTC
Permalink
Why is there no exp10() in ksh93 arithmetic on Linux? log10() is
available in Linux builds of Version AJM 93v- 2012-11-20:
lionel at clustersuse122n0441:~> nm ~/bin/ksh | fgrep log10
U log10l@@GLIBC_2.2.5

Excerpt from the Linux exp10() man page:
NAME
exp10, exp10f, exp10l - base-10 exponential function

SYNOPSIS
#define _GNU_SOURCE /* See feature_test_macros(7) */
#include <math.h>

double exp10(double x);
float exp10f(float x);
long double exp10l(long double x);

Link with -lm.

DESCRIPTION
The exp10() function returns the value of 10 raised to the power of x.

RETURN VALUE
On success, these functions return the base-10 exponential value of x.

For various special cases, including the handling of infinity
and NaN, as well as overflows and underflows, see exp(3).

ERRORS
See math_error(7) for information on how to determine whether
an error has occurred when calling these functions.

For a discussion of the errors that can occur for these
functions, see exp(3).

Lionel
Glenn Fowler
2013-02-04 15:10:55 UTC
Permalink
exp10() is not in ksh because its not in src/cmd/ksh93/data/math.tab
that table is maintained manually
it will be easy to add it for the next alpha/beta
Post by Lionel Cons
Why is there no exp10() in ksh93 arithmetic on Linux? log10() is
lionel at clustersuse122n0441:~> nm ~/bin/ksh | fgrep log10
NAME
exp10, exp10f, exp10l - base-10 exponential function
SYNOPSIS
#define _GNU_SOURCE /* See feature_test_macros(7) */
#include <math.h>
double exp10(double x);
float exp10f(float x);
long double exp10l(long double x);
Link with -lm.
DESCRIPTION
The exp10() function returns the value of 10 raised to the power of x.
RETURN VALUE
On success, these functions return the base-10 exponential value of x.
For various special cases, including the handling of infinity
and NaN, as well as overflows and underflows, see exp(3).
ERRORS
See math_error(7) for information on how to determine whether
an error has occurred when calling these functions.
For a discussion of the errors that can occur for these
functions, see exp(3).
Lionel
_______________________________________________
ast-developers mailing list
ast-developers at lists.research.att.com
http://lists.research.att.com/mailman/listinfo/ast-developers
Lionel Cons
2013-06-10 11:29:41 UTC
Permalink
Post by Glenn Fowler
exp10() is not in ksh because its not in src/cmd/ksh93/data/math.tab
that table is maintained manually
it will be easy to add it for the next alpha/beta
Looks it has been fixed in the last alpha release. thanks
Post by Glenn Fowler
Post by Lionel Cons
Why is there no exp10() in ksh93 arithmetic on Linux? log10() is
lionel at clustersuse122n0441:~> nm ~/bin/ksh | fgrep log10
NAME
exp10, exp10f, exp10l - base-10 exponential function
SYNOPSIS
#define _GNU_SOURCE /* See feature_test_macros(7) */
#include <math.h>
double exp10(double x);
float exp10f(float x);
long double exp10l(long double x);
Link with -lm.
DESCRIPTION
The exp10() function returns the value of 10 raised to the power of x.
RETURN VALUE
On success, these functions return the base-10 exponential value of x.
For various special cases, including the handling of infinity
and NaN, as well as overflows and underflows, see exp(3).
ERRORS
See math_error(7) for information on how to determine whether
an error has occurred when calling these functions.
For a discussion of the errors that can occur for these
functions, see exp(3).
Lionel
_______________________________________________
ast-developers mailing list
ast-developers at lists.research.att.com
http://lists.research.att.com/mailman/listinfo/ast-developers
Lionel

David Korn
2013-02-04 15:19:15 UTC
Permalink
cc: ast-users at lists.research.att.com
Subject: Re: [ast-developers] No exp10() in ksh93 arithmetic?
--------
Post by Lionel Cons
Why is there no exp10() in ksh93 arithmetic on Linux? log10() is
I don't think that exp10() is in the POSIX standard.

You can add it with
function .sh.math.exp10 x
{
((.sh.value = 10. **x ))
}

David Korn
dgk at research.att.com
Loading...