murex Shell Docs

Data-Type Reference

This section is a glossary of data-types which murex is natively aware.

Most of the time you will not need to worry about typing in_murex_ as the shell is designed around productivity as opposed to strictness despite generally following a strictly typed design. Examples of this are:

  1. adding numbers:

      » let a=1  # define 'a' as number
      » let b=1  # define 'b' as number
      » = a+b
      2

    (returns '2' as both $a and $b are numbers)

  2. adding strings:

      » set a=1  # define 'a' as string
      » let b=1  # define 'b' as number
      » = a+b
      11

    (returns '11' as $a is string so values are concatenated)

Definitions

For clarity, it is worth explaining a couple of terms:

  1. "Data-types" in murex are a description of the format of data. This means that while any stdio stream in UNIX will by "bytes", murex might label that data as being a JSON string or CSV file (for example) which means any builtins that parse that stdio stream, for example to return the first 8 items, would need to parse those types differently. Thus a "data-type" in murex is actually more than just a description of a data structure; it is a series of APIs to marshall and unmarshall data from complex file formats. This enables you to use the same command line tools to query any type of output.
  2. "Primitive" data-types refer to types that are the required by murex to function. These will be int, float / number, bool, string, generic, json, and null. All other data-types are optional albeit still recommended (unless described otherwise).

Feature Sets

Since not all data formats are equal (for example the TOML file format doesn't support naked arrays where as JSON does), you may find some features missing in some data-types which are present in others. If in doubt then refer to the manual here or check the API manual for more details about specific hooks.

Pages

This site's content is rebuilt automatically from murex's source code after each merge to the master branch. Downloadable murex binaries are also built with the website.

Last built on Tue Jun 22 08:18:17 UTC 2021 against commit 2235c7b2235c7b18f86f1cf214e246b88b0ea193d87fe80.

Current version is 2.2.1100 BETA which has been verified against tests.