-Projects:
⊟settings:
###### huginn - programming language with no quirks, so simple every child can master it.
git clone https://codestation.org/repo/huginn.git
git clone https://github.com/AmokHuginnsson/huginn.git
git clone https://bitbucket.org/huginn/huginn.git
3. ###### Types

Huginn provides several built-in scalar and collection types, as well as user defined compound types.

integer real string number character boolean list deque dict order lookup set heap
##### The Mathematics package provides essential mathematical functions and classes. All of those functions and classes work with values of both real and number types.
###### Members
• INFINITY - a real value representing a positive infinity
• MathematicsException( message ) - create instance of MathematicsException with given message
• NAN - a moniker representing an invalid real value
• arcus_cosinus( arg ) - calculate value of arcus cosine function of arg argument
• arcus_cotangens( arg ) - calculate value of arcus cotangent function of arg argument
• arcus_sinus( arg ) - calculate value of arcus sine function of arg argument
• arcus_tangens( arg ) - calculate value of arcus tangent function of arg argument
• binomial_coefficient( num1, num2 ) - calculate binomial coefficient of num1 and num2
• ceil( value ) - get smallest integral value not less than value
• cosinus( arg ) - calculate value of cosine function of arg argument
• cotangens( arg ) - calculate value of cotangent function of arg argument
• cumulative_distribution_function( arg, mu, sigma ) - calculate value of cumulative distribution function for normal distribution of arg argument, mu arithmetic mean and sigma standard deviation
• differs_at( first, second ) - tell at which decimal position first and second values have first occurrence of different digit
• e( type [, precision] ) - get value of $e$ of type type, potentially with given precision
• error_function( arg ) - calculate value of (Gaussian) error function of arg argument
• floor( value ) - get largest integral value not greater than value
• greatest_common_divisor( num1, num2 ) - find greatest common divisor of two numbers, num1 and num2
• hyperbolic_cosinus( arg ) - calculate value of hyperbolic cosine function of arg argument
• hyperbolic_cotangens( arg ) - calculate value of hyperbolic cotangent function of arg argument
• hyperbolic_sinus( arg ) - calculate value of hyperbolic sine function of arg argument
• hyperbolic_tangens( arg ) - calculate value of hyperbolic tangent function of arg argument
• max( arg1, arg2[, argN...] ) - find maximum element from given set
• min( arg1, arg2[, argN...] ) - find minimum element from given set
• modular_multiplication( fact1, fact2, modulus ) - calculate result of modular multiplication of fact1 and fact2 with respect to modulus
• modular_multiplicative_inverse( modulus, value ) - find modular multiplicative inverse for given value with respect to modulus
• natural_exponential( x ) - calculate value of $e^x$ (value of natural exponential of x)
• natural_logarithm( x ) - find natural logarithm of value x
• pi( type [, precision] ) - get value of $\pi$ of type type, potentially with given precision
• round( value[, precision] ) - round value, potentially to given precision
• sigmoid( arg ) - calculate value of sigmoid function of arg argument
• sinus( arg ) - calculate value of sine function of arg argument
• square_root( value ) - calculate square root of given value
• statistics( iterable ) - create NumberSetStatistics over iterable of uniformly types values
• tangens( arg ) - calculate value of tangent function of arg argument
##### The Mathematics.Complex class provides mathematical concept of complex numbers. It supports operations of addition, multiplication, subtraction, division, modulus and argument.
###### Members
• constructor( real, imaginary ) - create instance of Complex with real real part and imaginary imaginary part.
• argument() - get argument value of this Complex number
• get() - get both real and imaginary part of this Complex
• imaginary() - get imaginary part of this Complex number
• real() - get real part of this Complex number
• set( real, imaginary ) - set both real and imaginary part of this Complex number
• to_string() - get string representation of this Complex number
##### The Mathematics.Matrix class provides mathematical concept of number matrices. It supports operations of addition, multiplication, subtraction, scaling, inversion and transposition.
###### Members
• constructor( type, rows, cols ) - create instance of Matrix class of values of type type and rows rows and cols columns.
• apply( fun ) - apply unary function fun over all values in this Matrix
• columns() - get column dimension of this Matrix
• get( row, column ) - get numeric value present at given row and column in this Matrix
• inverse() - find inverse of this Matrix
• rows() - get row dimension of this Matrix
• scale( factor ) - scale all values in this Matrix by given factor
• scale_to( cap ) - rescale values in this Matrix so maximum of its values is equal to cap
• set( row, column, value ) - set given numeric value at given row and column in this Matrix
• to_string() - get string representation of this Matrix
• transpose() - create transposed version of this Matrix
##### The Mathematics.Randomizer.DISTRIBUTION is set of possible random variable distributions generated by a Randomizer.
###### Members
• DISCRETE - an uniform discrete distribution of integer values, parametrized by [a, b]
• NORMAL - a normal (Gaussian) distribution of real values, parametrized by [mu, sigma]
• POISSON - a Poisson distribution of real values, parametrized by [lambda]
• TRIANGLE - a triangle continuous distribution of real values, parametrized by [a, b, mod]
• UNIFORM - an uniform continuous distribution of real values, parametrized by [a, b]
##### The Mathematics.Randomizer class represents a random number generator concept. Mathematics.Randomizer can generate uniform distribution of either integer or real values from given range.
###### Members
• constructor( distribution, parameters... ) - create random number generator of a given distribution that is parametrized by supplied parameters
• next() - get next random number from this distribution
• seed([ data ]) - initialize random generator internal state based on supplied data, or using system entropy if no data is given
##### The Mathematics.NumberSetStatistics is a class representing results of gathering numerical statistics over some uniformly typed number set.
###### Members
• constructor( iterable ) - calculate numerical statistics over given iterable iterable of uniformly types values
• arithmetic_mean() - an arithmetic mean of all numbers in set
• count() - a number of elements in given numeric set
• histogram() - return a histogram calculated for given dataset
• interquartile_range() - an interquartile range of given set of values
• maximum() - a maximum numeric value in set
• mean_absolute_deviation() - a mean absolute deviation of the numeric set
• median() - a median value in set
• mid_range() - a mid range value of the numbers in the given set
• minimum() - a minimum numeric value in set
• population_kurtosis() - a population kurtosis of the numeric set
• population_skewness() - a population skewness of the numeric set
• population_standard_deviation() - a population standard deviation of the numeric set
• population_variance() - a population sample_variance of the numeric set
• range() - a range of values in the numeric set
• sample_kurtosis() - a sample kurtosis of the numeric set
• sample_skewness() - a sample skewness of the numeric set
• sample_standard_deviation() - a standard deviation of the numeric set
• sample_variance() - a sample_variance of the set
• sum() - a sum of all values in set