diff options
| author | Marshall Lochbaum <mwlochbaum@gmail.com> | 2022-10-17 21:54:16 -0400 |
|---|---|---|
| committer | Marshall Lochbaum <mwlochbaum@gmail.com> | 2022-10-17 21:54:16 -0400 |
| commit | 0a4f6d3d0de2b28cff34c8c2bea5e520e69c521b (patch) | |
| tree | 53a27eaa89fa31819a83920a12e181f635bac8c8 /spec | |
| parent | 5bb8566a1916a7fcccaea3e57181966d7ec9f1bb (diff) | |
Remove •bit._mulu, as it's the same as _mul
Diffstat (limited to 'spec')
| -rw-r--r-- | spec/system.md | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/spec/system.md b/spec/system.md index 535c81e9..15a9ca78 100644 --- a/spec/system.md +++ b/spec/system.md @@ -325,7 +325,6 @@ The system namespace `•bit` gives functions for efficiently applying bitwise a | `_add` | 2 | integer | `+` | `_sub` | 2 | integer | `-` | `_mul` | 2 | integer | `×` -| `_mulu` | 2 | unsigned | `×` An operation is exposed as a 1-modifier that takes up to four numbers for its operand. - Operation width @@ -338,7 +337,7 @@ An example call is `a 16‿1•bit._add b`, to perform 16-bit additions on two b To apply a bitwise operation, each argument is represented as a stream of bits based on the width given for it, then split into units whose width is the operation width. The operation is applied to these units. The result is again treated as a stream of bits and split according to the result width, with each unit forming a result element. -The operation width, along with the "Type" column above, determines what operation is performed. For bit operations it has no effect, except to constrain the argument sizes according to the shape rules below. Integer (meaning signed) and unsigned operations support widths of 8 and above, and should support higher values such as 128 if available. +The operation width, along with the "Type" column above, determines what operation is performed. For bit operations it has no effect, except to constrain the argument sizes according to the shape rules below. Integer operations support widths of 8 and above, and should support higher values such as 128 if available. For all of them, there is no difference between wrapping signed and unsigned operations given that the argument and result widths are the same. Argument and result widths correspond to little-endian binary representations according to the following table (operation widths don't—see the "type" field in the table above). Here "boolean" indicates value 0 or 1, "signed integer" indicates two's complement representation, and "character" is a code point in an unsigned representation. Either type may be used for an argument, but the result will always use a primary type. |
