github.com/lmorg/murex@v0.0.0-20240217211045-e081c89cd4ef/gen/types-md-cat.inc.md (about)

     1  This section is a glossary of data-types which Murex is natively aware.
     2  
     3  Most of the time you will not need to worry about typing in Murex as the
     4  shell is designed around productivity as opposed to strictness despite
     5  generally following a strictly typed design.
     6  
     7  Read the [Language Tour]({{if env "DOCGEN_TARGET="}}/docs{{end}}/tour.md) for more detail on this topic.
     8  
     9  ## Definitions
    10  
    11  For clarity, it is worth explaining a couple of terms:
    12  
    13  1. "Data-types" in Murex are a description of the format of data. This
    14  means that while any stdio stream in UNIX will by "bytes", Murex might
    15  label that data as being a JSON string or CSV file (for example) which
    16  means any builtins that parse that stdio stream, for example to return
    17  the first 8 items, would need to parse those types differently. Thus a
    18  "data-type" in Murex is actually more than just a description of a data
    19  structure; it is a series of APIs to marshall and unmarshall data from
    20  complex file formats. This enables you to use the same command line tools
    21  to query any type of output.
    22  
    23  2. "Primitive" data-types refer to types that are the required by Murex
    24  to function. These will be `int`, `float` / `number`, `bool`, `string`,
    25  `generic`, and `null`.
    26  
    27  ## Feature Sets
    28  
    29  Since not all data formats are equal (for example the TOML file format
    30  doesn't support naked arrays where as JSON does), you may find some
    31  features missing in some data-types which are present in others. If in
    32  doubt then refer to the manual here or check the API manual for more
    33  details about specific hooks.