diff options
-rw-r--r-- | apl9.h | 1 | ||||
-rw-r--r-- | functions.c | 11 |
2 files changed, 11 insertions, 1 deletions
@@ -299,6 +299,7 @@ Array *fnTally(Array *); Array *fnMix(Array *); Array *fnSplit(Array *); Array *fnEnclose(Array *); +Array *fnDisclose(Array *); Array *fnNest(Array *); Array *fnGradeUp(Array *); Array *fnGradeDown(Array *); diff --git a/functions.c b/functions.c index 6c9f837..eedacb9 100644 --- a/functions.c +++ b/functions.c @@ -39,7 +39,7 @@ fnmonad monadfunctiondefs[] = { fnMix, /* ↑ */ fnSplit, /* ↓ */ fnEnclose, /* ⊂ */ - 0, /* ⊃ */ + fnDisclose, /* ⊃ */ fnNest, /* ⊆ */ 0, /* ⌷ */ fnGradeUp, /* ⍋ */ @@ -497,6 +497,15 @@ fnEnclose(Array *right) } Array * +fnDisclose(Array *right) +{ + if(right->size == 0) + return fillelement(right); + else + return arrayitem(right, 0); +} + +Array * fnNest(Array *right) { if(simplearray(right)) |