diff --git a/src/setting/Any-num.pm b/src/setting/Any-num.pm index dbaa489d1cf..226788247af 100644 --- a/src/setting/Any-num.pm +++ b/src/setting/Any-num.pm @@ -110,7 +110,7 @@ class Any is also { self.Num.cosec($base); } - our Num multi method cotan($base = 'radians') is export { + our Num multi method cotan($base = 'radians') { self.Num.cotan($base); } @@ -162,7 +162,7 @@ class Any is also { self.Num.acosec($base); } - our Num multi method acotan($base = 'radians') is export { + our Num multi method acotan($base = 'radians') { self.Num.acotan($base); } @@ -236,6 +236,14 @@ multi sub acosec($x, $base = 'radians') { $x.acosec($base) } +multi sub cotan($x, $base = 'radians') { + $x.cotan($base) +} + +multi sub acotan($x, $base = 'radians') { + $x.acotan($base) +} + our Num sub rand (*@args) { die "too many arguments passed - 0 params expected" if @args; 1.rand diff --git a/src/setting/Complex.pm b/src/setting/Complex.pm index 42ae05468b0..e823226254a 100644 --- a/src/setting/Complex.pm +++ b/src/setting/Complex.pm @@ -45,7 +45,7 @@ class Complex { } multi method atan($base = 'radians') { - ((log(1 - (self)i) - log(1 + (self)i))i / 2)!from-radians($base); + ((log(1 - (self)i) - log(1 + (self)i))i / 2)!from-radians($base); } multi method sec($base = 'radians') { @@ -64,6 +64,14 @@ class Complex { (1 / self).asin($base); } + multi method cotan($base = 'radians') { + self.cos($base) / self.sin($base); + } + + multi method acotan($base = 'radians') { + (1 / self).atan($base); + } + multi method log() { Q:PIR { $P0 = get_root_namespace ['parrot'; 'Complex' ] diff --git a/src/setting/Num.pm b/src/setting/Num.pm index 7f893d885c0..00015f45e46 100644 --- a/src/setting/Num.pm +++ b/src/setting/Num.pm @@ -64,7 +64,7 @@ class Num is also { asinh(1/+self)!from-radians($base) } - our Num multi method acotan($base = 'radians') is export { + our Num multi method acotan($base = 'radians') { my $r = Q:PIR { $N0 = self $N1 = 1 / $N0 @@ -208,7 +208,7 @@ class Num is also { }; } - our Num multi method cotan($base = 'radians') is export { + our Num multi method cotan($base = 'radians') { my $x = self!to-radians($base); Q:PIR { $P0 = find_lex "$x"