Up to Main Index Up to Journal for July, 2023 JOURNAL FOR FRIDAY 14TH JULY, 2023 ______________________________________________________________________________ SUBJECT: Mere ICE updated to v0.0.3 DATE: Fri 14 Jul 16:03:44 BST 2023 Mere ICE has been updated to v0.0.3 in the annexed works[1]. This update comes ten weeks after the v0.0.2 release. Mere now supports an unsigned integer, uint, data type. The time built-in has been reworked. A new elapsed built-in has been added. For details on unsigned integers, time and elapsed see their entries in the reference section. Two new example programs have been added: an ASCII table and a bit shifter. NOTE: Please make sure the version in the top right of Mere ICE shows ‘v0.0.3’ and if not hard refresh the web page in your browser. One last minute change also sneaked in. As the bit-wise NOT ‘¬’ operator wasn’t very popular[2], it is now an alias for ‘!’. The ‘!’ operator is now a logical NOT when used with a boolean and a bit-wise NOT when used with a uint. For example: >cat test.mr b = true x = uint 10u println b println !b printf "%08b\n" x & 0xFFu printf "%08b\n" !x & 0xFFu >mere test.mr true false 00001010 11110101 > From the “What’s New” section: v0.0.3 — Friday 14th July, 2023 ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ • For strings and arrays the count maybe omitted from the delete built-in. If count is omitted a value of 1 is assumed. • Plain assignment and indexed assignment now have lower precedence than fused assignment operators, for example ‘+=’. • Improved parsing of increment '++' and decrement '--' operators. • Reformat Mere ICE documentation from 51 to 70 columns. Dome users may need to select a smaller font using the font toggle. • Return types now included in synopsis for built-ins in the reference section. • Reworked time built-in and new elapsed built-in. Resolves issue with time range on 32-bit platforms being too small to be useful. See reference section for time and elapsed for details. • Added support for uint data type, with additional + new tests. • Added bit-wise NOT operator ‘¬’ to invert all bits in a uint. The ‘¬’ symbol is Unicode “NOT SIGN” U+00AC. This is an alias for '!', which may be used instead. The '!' operator has been overloaded to work as logical NOT with bools and bit-wise NOT with uints. • Allow more formats when converting a string to an integer, unsigned integer or float. • Improve handling of converting negative integer, unsigned integer and float. • Improved handling of negative literals in expressions and statements. • Fixed inconsistencies and issues on 32-bit platforms. • Added ASCII table example program. • Added bit swapper example program. As always, if you find any bugs or have problems or suggestions then please drop me a quick email: diddymus@wolfmud.org -- Diddymus [1] The annexed works: /annex/ [2] People find it difficult to type ‘¬’ on modern keyboards… Up to Main Index Up to Journal for July, 2023