From dafdb9d620615ba3172e8e0b557b02486a09fb25 Mon Sep 17 00:00:00 2001 From: Simon Forman Date: Sat, 27 Nov 2021 16:59:57 -0800 Subject: [PATCH] A Python version of the `ii` combinator. --- joy/library.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/joy/library.py b/joy/library.py index f85c69e..800ff3b 100644 --- a/joy/library.py +++ b/joy/library.py @@ -783,6 +783,22 @@ def b(stack, expression, dictionary): return stack, concat(p, concat(q, expression)), dictionary +@inscribe +@FunctionWrapper +def ii(stack, expression, dictionary): + ''' + :: + + ... a [Q] ii + ------------------ + ... Q a Q + + ''' + quote, (a, stack) = stack + expression = concat(quote, (a, concat(quote, expression))) + return stack, expression, dictionary + + @inscribe @FunctionWrapper def dupdip(stack, expression, dictionary):