Agena is an easy-to-learn procedural programming language suited to be used in scientific, educational, linguistic, and many other applications, including scripting.
`math.arcsinh` and `math.arctanh` compute the inverse hyperbolic sine and tangent in the real domain.
`bytes.trailzeros` counts the number of trailing zeros in an unsigned 32-bit integer.
`tables.borders` returns the lowest and highest assigned index in the array part of a table. With tables, `environ.attrib` also returns them, represented by 'lowest' and 'highest' keys.
Improvements and bugfixes:
`prepend` now works in-place, making it much more efficient, as are its counterparts `put` and the `insert` statement.
`arccosh` has become thrice as fast in the real domain.
`debug.getlocals` crashed with invalid levels. This has been fixed. It now also returns a table of unassigned local variables.
`hashes.murmur3128` could crash, this has been fixed. It now returns 4 unsigned 32-bit integers, accepts an optional seed as the third argument and is now available in the OS/2 and Raspberry Pi editions, as well.
The new C API function `agn_arrayborders` returns the lowest and highest index of the array part of a table.