(program (define VECINIT (N) (program (make LV {list(0) } ) 
 (loop () (UNTIL {N ` length(LV) } ) (do (program (make LV {cons(0,LV)  } ) 
 )) (result {LV }))
 (MAKE NL (EVAL (CONS (QUOTE VECTOR) LV)))
 ))  2, VECINIT, 1, 2,  0, 9, 0,  , retval,  , 0 ; 0, 0, 0,  , N,  , 0 ; VECINIT(N) ; PROGRAM VECINIT (EXPRESSION N)
 
{
  LET LV LIST(0);
  DO
   UNTIL N <= LENGTH(LV)
   RETURNING LV
   {LET LV NODE(0,LV) }
   LISP (MAKE NL (EVAL (CONS (QUOTE VECTOR) LV)));
} |
 (define SEQUENCE (N) (program (make LV {list(N) } ) 
 (loop (I {N } ) (UNTIL {N ` length(LV) } ) (do (program (make I {I- 1 } ) 
 (make LV {cons(I,LV)  } ) 
 )) (result {LV }))
 (MAKE NL (EVAL (CONS (QUOTE VECTOR) LV)))
 ))  2, SEQUENCE, 1, 2,  0, 9, 0,  , retval,  , 0 ; 0, 0, 0,  , N,  , 0 ; SEQUENCE(N) ; PROGRAM SEQUENCE (EXPRESSION N)
 
{
  LET LV LIST(N);
  DO
   I=N
   UNTIL N <= LENGTH(LV)
   RETURNING LV
   {LET I I-1;
   LET LV NODE(I,LV) }
   LISP (MAKE NL (EVAL (CONS (QUOTE VECTOR) LV)));
} |
 (define VJOIN (V1 V2) (program (make RV {VECINIT(length(V1)+ length(V2)) } ) 
 (make L1 {length(V1) } ) 
 (make L2 {length(V2) } ) 
 (loop (I {1 } ) (UNTIL {I > L1 } ) (do (program (SETC RV I (V1 I))
 (make I {I+ 1 } ) 
 )) (result {RV }))
 (loop (I {1 } ) (UNTIL {I > L2 } ) (do (program (SETC RV (+ L1 I) (V2 I))
 (make I {I+ 1 } ) 
 )) (result {RV }))
 ))  2, VJOIN, 2, 2,  0, 9, 0,  , retval,  , 0 ; 0, 1, 0,  , V1,  , 0 ; 0, 1, 0,  , V2,  , 0 ; VJOIN(V1,V2) ; PROGRAM VJOIN (VECTOR #0 V1) (VECTOR #0  V2)
 {
  LET RV VECINIT(LENGTH(V1)+LENGTH(V2));
  LET L1 LENGTH(V1);
  LET L2 LENGTH(V2);
  DO
   I = 1
   UNTIL I > L1
    RETURNING RV
    {LISP (SETC RV I (V1 I));
     LET I I+1;}
  DO
   I = 1
   UNTIL I > L2
    RETURNING RV
    {LISP (SETC RV (+ L1 I) (V2 I));
     LET I I+1;}
 } |
 )