Function

 

Function Overview

The Analytic Information Server engine supports many built-in functions. These Function Data Types are AIS Object Data Types. Built-in functions are much simpler than Lambdas, and usually perform a specific repetitive operation on some type or types of data. There are built-in functions for performing arithmetic operations, logarithmic operations, string manipulations, and more.

When to Use

Use the built-in functions to accomplish low level operation on data in the engine.

Constant Form

There is no constant form for a Function.

Object Data Types

The Function is a Heap Object or an Object Data Type. The Analytic Information Server Object Types are stored in the Heap and are managed by the Heap manager. The Analytic Information Server Heap manager supports object resizing, garbage collection, and anti-fragmentation algorithms so that the user may concentrate on the analysis and modeling of data rather than on memory management. Without exception, all of the Object types are identified by an object id. The object id identifies a block of memory, managed by the Lambda Information Server memory manager, in which the Object's data is stored.

The Analytic Information Server Heap Object and Native Data types can be saved and loaded to and from persistent (disk file) storage at any time. Containers with immediate data are saved on disk in fixed length records equal to the size of the container. Containers with Heap object references are saved in fixed length records, which are automatically expanded to include the contents of the Heap object, and any objects referenced by the Heap object, etc. This feature is called Object Closure Management and is automatic with every Analytic Information Server container database save.

Analytic Information Server containers may be loaded from any database repository record at any time. If the data in the record is immediate, the database load fills the container with the immediate data. If the data in the record is an object closure, the database load fills the container with a Heap object reference, and all of the objects in the record are loaded back into the Heap with the same referential relationships they had when they were saved in the repository.

 

Data Type Examples

The Function object can be demonstrated by the following examples.

Example_Function_addMethod_017 Example_Function_addMethod_018 Example_Function_compareEQ_013 Example_Function_compareGE_013
Example_Function_compareGT_013 Example_Function_compareLE_013 Example_Function_compareLT_013 Example_Function_compareNE_013
Example_Function_compare_013 Example_Function_comparison_012 Example_Function_defmethod_016 Example_Function_isEqual_012
Example_Function_isIdentical_011 Example_Function_isType_015 Example_Function_methodsOf_016 Example_Function_ref_021
Example_Function_send_014 Example_Function_sizeof_013 Example_Function_type_015