From 2ff4b85fc73f0cf82034e2a19ea8c5d677812c9c Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Tue, 11 Jan 2022 23:31:05 +0000 Subject: =?UTF-8?q?Add=20=E2=8A=A3=20and=20=E2=8A=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apl9.h | 3 +++ functions.c | 28 ++++++++++++++++++++++++---- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/apl9.h b/apl9.h index ca7ed7c..413c52c 100644 --- a/apl9.h +++ b/apl9.h @@ -115,6 +115,7 @@ Symbol *getsym(Symtab *, Rune *); Symtab *newsymtab(void); /* Monadic functions from functions.h */ +Array *fnSame(Array *); Array *fnTally(Array *); Array *fnEnclose(Array *); Array *fnNest(Array *); @@ -122,6 +123,8 @@ Array *fnRavel(Array *); Array *fnShape(Array *); /* Dyadic functions from functions.h */ +Array *fnLeft(Array *, Array *); +Array *fnRight(Array *, Array *); Array *fnCatenateFirst(Array *, Array *); Array *fnReshape(Array *, Array *); diff --git a/functions.c b/functions.c index 71e5400..cf5402a 100644 --- a/functions.c +++ b/functions.c @@ -22,8 +22,8 @@ fnmonad monadfunctiondefs[] = { 0, /* ⌊ */ 0, /* ⊥ */ 0, /* ⊤ */ - 0, /* ⊣ */ - 0, /* ⊢ */ + fnSame, /* ⊣ */ + fnSame, /* ⊢ */ 0, /* = */ 0, /* ≠ */ 0, /* ≤ */ @@ -77,8 +77,8 @@ fndyad dyadfunctiondefs[] = { 0, /* ⌊ */ 0, /* ⊥ */ 0, /* ⊤ */ - 0, /* ⊣ */ - 0, /* ⊢ */ + fnLeft, /* ⊣ */ + fnRight, /* ⊢ */ 0, /* = */ 0, /* ≠ */ 0, /* ≤ */ @@ -118,6 +118,12 @@ fndyad dyadfunctiondefs[] = { /* Monadic functions */ +Array * +fnSame(Array *right) +{ + return right; +} + Array * fnTally(Array *right) { @@ -167,6 +173,20 @@ fnShape(Array *right) /* Dyadic functions */ +Array * +fnLeft(Array *left, Array *right) +{ + USED(right); + return left; +} + +Array * +fnRight(Array *left, Array *right) +{ + USED(left); + return right; +} + Array * fnCatenateFirst(Array *left, Array *right) { -- cgit v1.2.3