From 15a2665023b58c93372dddb08e11bb8c2e6a8661 Mon Sep 17 00:00:00 2001 From: JonoCode9374 <36217120+JonoCode9374@users.noreply.github.com> Date: Thu, 26 Dec 2019 20:56:31 +1100 Subject: [PATCH] Update chainify.py --- chainify.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/chainify.py b/chainify.py index 1b62627..5f53780 100644 --- a/chainify.py +++ b/chainify.py @@ -1,4 +1,4 @@ -dyads = "*+-/%" +dyads = "*+-/%@" monads = list(map(chr, range(ord("A"), ord("Z") + 1))) nilads = "1234567890" @@ -16,10 +16,12 @@ for char in source: exprs = [] expr = [] -patterns = ["02", "10", "11", "12", "20", "21", "22"] +patterns = ["020", "021", "022", "02", "10", "11", "12", "20", "21", "22", + "102", "110", "111", "112", "120", "121", "122", + "202", "210", "211", "212", "220", "221", "222"] pattern = "" while len(arities): - if pattern in patterns: + if pattern in patterns and pattern + str(arities[-1][0]) not in patterns: exprs += [pattern, expr] expr = [] pattern = "" @@ -28,9 +30,9 @@ while len(arities): expr.append(arities[-1][1]) arities.pop() -if not exprs and pattern in patterns: - exprs += [pattern, expr] - expr = [] - pattern = "" +if expr and pattern in patterns: + exprs += [pattern, expr] + expr = [] + pattern = "" print(exprs)