From adf5b2ba1386b351ea0ecf9158520aef7ca2c0e3 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Fri, 5 Feb 2021 22:19:19 -0500 Subject: Update runtime provided functions table --- docs/implementation/vm.html | 59 ++++++++++++++++++++++++++++----------------- implementation/vm.md | 45 ++++++++++++++++++---------------- 2 files changed, 61 insertions(+), 43 deletions(-) diff --git a/docs/implementation/vm.html b/docs/implementation/vm.html index 829c755d..46a8aa06 100644 --- a/docs/implementation/vm.html +++ b/docs/implementation/vm.html @@ -393,106 +393,121 @@ 0 -IsArray -1 if the right argument is an array, 0 otherwise +Type +β€’Type 1 -Type -The fill value for array 𝕩 +Decompose +β€’Decompose 2 +Glyph +(Unused) β€’Glyph for primitive 𝕩 + + +3 +Fill +Get or set the fill value for array 𝕩 + + +4 Log ⋆⁼ (natural or base-𝕨 logarithm) for atomic arguments -3 +5 GroupLen β‰ Β¨βŠ”π•© for a valid list 𝕩 -4 +6 GroupOrd βˆΎβŠ”π•© provided 𝕨 is GroupLen 𝕩 -5 +7 ! -6 +8 + On two atoms -7 +9 - On one or two atoms -8 +10 Γ— On two atoms -9 +11 Γ· On one or two atoms -10 +12 ⋆ On one or two atoms -11 +13 ⌊ On one atom -12 +14 = On one value or two atoms -13 +15 ≀ On two atoms -14 +16 β‰’ For array 𝕩 -15 +17 β₯Š For array 𝕩 with no 𝕨 or 𝕨=β—‹(Γ—Β΄)≒𝕩 -16 +18 βŠ‘ For atom 𝕨 and list 𝕩 -17 +19 ↕ For natural number 𝕩 -18 +20 ⌜ On arrays -19 +21 ` -20 +22 +_fillBy_ +𝔽 with result fill computed using 𝔾 + + +23 ⊘ diff --git a/implementation/vm.md b/implementation/vm.md index cc86180e..302717e0 100644 --- a/implementation/vm.md +++ b/implementation/vm.md @@ -119,27 +119,30 @@ The contents of a core runtime are given below. The names given are those used i | Ind | Name | Description / restrictions |----:|------------|--------------------------- -| 0 | `IsArray` | 1 if the right argument is an array, 0 otherwise -| 1 | `Type` | The fill value for array `𝕩` -| 2 | `Log` | `⋆⁼` (natural or base-`𝕨` logarithm) for atomic arguments -| 3 | `GroupLen` | `β‰ Β¨βŠ”π•©` for a valid list `𝕩` -| 4 | `GroupOrd` | `βˆΎβŠ”π•©` provided `𝕨` is `GroupLen 𝕩` -| 5 | `!` | -| 6 | `+` | On two atoms -| 7 | `-` | On one or two atoms -| 8 | `Γ—` | On two atoms -| 9 | `Γ·` | On one or two atoms -| 10 | `⋆` | On one or two atoms -| 11 | `⌊` | On one atom -| 12 | `=` | On one value or two atoms -| 13 | `≀` | On two atoms -| 14 | `β‰’` | For array `𝕩` -| 15 | `β₯Š` | For array `𝕩` with no `𝕨` or `𝕨=β—‹(Γ—Β΄)≒𝕩` -| 16 | `βŠ‘` | For atom `𝕨` and list `𝕩` -| 17 | `↕` | For natural number `𝕩` -| 18 | `⌜` | On arrays -| 19 | `` ` `` | -| 20 | `⊘` | +| 0 | `Type` | `β€’Type` +| 1 | `Decompose`| `β€’Decompose` +| 2 | `Glyph` | (Unused) `β€’Glyph` for primitive `𝕩` +| 3 | `Fill` | Get or set the fill value for array `𝕩` +| 4 | `Log` | `⋆⁼` (natural or base-`𝕨` logarithm) for atomic arguments +| 5 | `GroupLen` | `β‰ Β¨βŠ”π•©` for a valid list `𝕩` +| 6 | `GroupOrd` | `βˆΎβŠ”π•©` provided `𝕨` is `GroupLen 𝕩` +| 7 | `!` | +| 8 | `+` | On two atoms +| 9 | `-` | On one or two atoms +| 10 | `Γ—` | On two atoms +| 11 | `Γ·` | On one or two atoms +| 12 | `⋆` | On one or two atoms +| 13 | `⌊` | On one atom +| 14 | `=` | On one value or two atoms +| 15 | `≀` | On two atoms +| 16 | `β‰’` | For array `𝕩` +| 17 | `β₯Š` | For array `𝕩` with no `𝕨` or `𝕨=β—‹(Γ—Β΄)≒𝕩` +| 18 | `βŠ‘` | For atom `𝕨` and list `𝕩` +| 19 | `↕` | For natural number `𝕩` +| 20 | `⌜` | On arrays +| 21 | `` ` `` | +| 22 | `_fillBy_` | `𝔽` with result fill computed using `𝔾` +| 23 | `⊘` | Remember that `+` and `-` can also work on characters in some circumstances, under the rules of affine characters. Other arithmetic functions should only accept numbers. `=` must work on numbers, characters, and primitives, and should give `0` without causing an error if the arguments have different types or one is a primitive and the other isn't. `≀` must work on numbers and characters. -- cgit v1.2.3