     8-bit-registers sp ,
     "," token hide ,
     16-bit-registers indirect ,
-  ] seq* [ first3 append swap curry  ] action ;  
+  ] seq* [ two-params  ] action ;  
 
 : SUB-R-instruction ( -- parser )
   [
     "SUB-R" "SUB" complex-instruction ,
     8-bit-registers sp ,
-  ] seq* [ first2 swap curry ] action ;  
+  ] seq* [ one-param ] action ;  
 
 : SUB-(RR)-instruction ( -- parser )
   [
     "SUB-(RR)" "SUB" complex-instruction ,
     16-bit-registers indirect sp ,
-  ] seq* [ first2 swap curry ] action ;  
+  ] seq* [ one-param ] action ;  
 
 : SUB-N-instruction ( -- parser )
   [
     "SUB-N" "SUB" complex-instruction ,
     "n" token sp hide ,
-  ] seq* [ first { } swap curry  ] action ;
+  ] seq* [ no-params  ] action ;
 
 : ADD-R,N-instruction ( -- parser )
   [
     "ADD-R,N" "ADD" complex-instruction ,
     8-bit-registers sp ,
     ",n" token hide ,
-  ] seq* [ first2 swap curry ] action ;  
+  ] seq* [ one-param ] action ;  
 
 : ADD-R,R-instruction ( -- parser )
   [

    16-bit-registers indirect sp , 
    "," token hide ,
    16-bit-registers ,
  ] seq* [ first3 append swap curry ] action ;  

: EX-RR,RR-instruction ( -- parser )
  [

    16-bit-registers sp ,
    "," token hide ,
    16-bit-registers ,
  ] seq* [ two-params ] action ;  

: LD-R,(RR)-instruction ( -- parser )
  [
