Agena is an easy-to-learn procedural programming language suited to be used in scientific, educational, linguistic, and many other applications, including scripting.
What's new in Agena
The new function `math.xlnplusone` computes x - ln(1 + x) in a way that is accurate even if x is near zero
The new factory `os.iterate` creates a function that when called traverses a directory and optionally also returns the `file system` type (file, directory, link, etc.)
The new function `hashes.interweave` splits a number into its higher and lower unsigned 4-byte words and applies one of the following binary operations: `or`, `and` or `xor`. Optionally, it also condcts mask, bit-shift and modulus operations
The integer division operator `` with non-complex numbers, and the `iqr` function have become six percent faster
With non-complex numbers, the `sign` and `signum` operators have become at least four percent faster
Removed glitches from both `os.list` and underlying `os.listcore` when passing an optional single `*` wildcard search pattern. Furthermore, on some operating systems unnecessary additional queries of file attributes are prevented, speeding up both functions
`utils.unhexlify` did not work. This has been fixed
`bytes.numwords` returned a wrong unbiased exponent with argument 0. This has been fixed
Hardened `strings.format`, `os.islocale` and `os.fcopy` against unexpected internal memory allocation errors
For at least the last six months, the portable version of Agena for Windows unfortunately included an `agena.ini` initialisation file that might have overwritten the user-created one. The file has now been removed from the ZIP distribution
Join over 500,000 subscribers.
Subscribe for our newsletter with best Mac offers from MacUpdate.