/*)
CLASS {Mathematics|_shortened_version_for_primary_compiler}, NATIVE, UNTESTED :

IMPORT: {System_functions} ;
(*********************/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;


public class AL4_math
{
    /**********************)
    // these three functions are moved from class {System_functions}:
    FUNCTION Power|_of(REAL B|ase_value, REAL Exp|onent) ==> REAL,
             STATIC, NATIVE :
        "    return Math.Pow(X_B, X_Exp);" .

    FUN Sqrt|_square_root( REAL X|_argument ) ==> REAL, STATIC, NATIVE :
        @"    try {"
         "        return Math.Sqrt(X_X);"
         "    }"
         "    catch (Exception E) {"
         "        AL4_system.Any_exception(E);"
         "        return Double.NaN;"
         "    }" .

    FUNCTION Is_NAN|_value(REAL V|alue_to_check) ==> BOOL, STATIC, NATIVE :
        "    return Double.IsNaN(X_V);" .
        
    FUN Abs|olute_real_number(REAL X|_argument) ==> REAL, STATIC, NATIVE :
        "    return Math.Abs(X_X);" .

    FUN Sign|_of_number( REAL X|_number) ==> INT, STATIC :
        CASE X < 0 ? RESULT = -1 ==> ;
        CASE X > 0 ? RESULT =  1 ; .
        
	FUNCTION Is_INF|_DUMMY(
	REAL V|alue_to_check) ==> BOOL : .         
        
        
    (**********************/

}

/*******************************)
END
(*******************************/
// *)
