Category:MAPPER: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 33:
 
A report is a column-oriented grid of fixed-length fields, similar in some ways to a spreadsheet, in that there are columns and rows and a set of headers.
 
Many operations on reports create a result, which is a non-permanent report with the same structure as a report. In manual funtions, there is only one result possible, but runs (scripts) can support up to 17 results, which are referenced the same way as reports but with a negative report-ID. The result created by an operation is "-0", but these can be saved to -1 to -16 inclusive by the "rename" (@rnm) function. This allows runs to perform powerful match, blend and reformat instructions.
 
The MAPPER language is an interpreted scripting language, and is held within the MAPPER database, in reports. An application in MAPPER is commonly held within a cabinet, or within a series of consecutive cabinets.
 
While an interpreted language, MAPPER is reasonably quisk as the atoms themselves are quite powerful- sort, search, match, count etc are all atoms of the language (which are written in C++ or MASM, depending on platform).
 
The typing in MAPPER script is very simple: the types are primitive (integer, real, string) and no structs or similar complex classes are supported. One-dimensional arrays are supported, arrays of higher dimension would have to simulated in code.
 
Complex data structures would need to be held in reports or results.
 
As an alternative, MAPPER may be scripted using Javascript, and the environment contains its own embedded javascript interpreter, with some extensions to reference reports etc as recordset objects, and methods which map onto the atoms of the native scripting language.
Anonymous user