From e5fb1e1e7b5a3a1d32abf7da1a0d07d4ad6e4cdd Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Thu, 11 Nov 2021 21:59:46 -0500 Subject: Add tests for Nothing-checking opcodes --- test/cases/bytecode.bqn | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'test') diff --git a/test/cases/bytecode.bqn b/test/cases/bytecode.bqn index 6cca078b..72fdb8cb 100644 --- a/test/cases/bytecode.bqn +++ b/test/cases/bytecode.bqn @@ -11,17 +11,20 @@ 5 % a←5 # 33 VARM, 48 SETN 4 % a←5⋄a↩4 # 49 SETU 2 % a←2⋄b←3⋄a # 32 VARO -1 % a←1⋄A 4 # 18 FN1O -2 % a←2⋄3 A 4 # 19 FN2O +1 % a←1⋄A 4 # 16 FN1C +2 % a←2⋄3 A 4 # 17 FN2C 6 % {𝕩}6 # 1 DFND 3 % A←{𝕨}⋄3 A 4 # dyadic block function 7 % a‿b←7‿2⋄a # 11 ARRO, 12 ARRM +2 % 0{𝕨𝕏1}2 # 19 FN2O (doesn't test call type) +5 % {({𝕨}𝕨)𝕏𝕩}5 # 18 FN1O not called +8 % {𝕩{a‿b←𝕨}𝕨,𝕩}8 # 19 FN2O not called 4 % 4{𝔽} # 26 MD1C 6 % 4{𝔽⋄𝕩}6 # deferred modifier 1 % 3{𝔾}{𝕩} 1 # 27 MD2C 2 % (2{𝔽}{𝕩})3 # 20 TR2D 3 % 3({a‿b←𝕩⋄a}{𝕨‿𝕩})4 # dyadic 2-train -4 % 4({𝕨‿𝕩}{𝕩}{𝕨})5 # 23 TR3O +4 % 4({𝕨‿𝕩}{𝕩}{𝕨})5 # 21 TR3D 2 % a‿b←(2{𝕨‿𝕩}{𝕩})5⋄a # monadic, data in left branch 2 % ({a↩2⋄𝕩}{𝕩⋄a}{a↩3⋄𝕩})a←4 # ordering 8 % a←3⋄a{𝕩}↩8⋄a # 50 SETM @@ -29,6 +32,12 @@ 1 % a←3⋄a{𝕩⋄1}↩⋄a # 51 SETC 4 % a‿b←2‿1⋄a‿b{𝕩‿𝕨}↩4⋄a # lists +# Call type tests; can also replace {a←𝕩⋄{a↩𝕩}𝕨⋄a} with {𝕩;𝕨} +7 % {𝕨{a←𝕩⋄{a↩𝕩}𝕨⋄a}𝕩}7 # 19 FN2O call type +3 % 3{𝕨{a←𝕩⋄{a↩𝕩}𝕨⋄a}𝕩}7 # 19 FN2O call type +7 % {𝕏0} {𝕨{a←𝕩⋄{a↩𝕩}𝕨⋄a}𝕏}7 # 23 TR3O call type +3 % {𝕏0}3{𝕨{a←𝕩⋄{a↩𝕩}𝕨⋄a}𝕏}7 # 23 TR3O call type + # Further tests for lexical scoping 1 % a←1⋄{a←2}⋄a 2 % a←1⋄{a↩2}⋄a -- cgit v1.2.3