let print_instcode (inst: inst_type) (out: out_channel) = match inst with 
          CPY       ->  output_string out "CPY"
        | AGET      ->  output_string out "AGET"
        | ASET      ->  output_string out "ASET"
        | ADD       ->  output_string out "ADD"
        | SUB       ->  output_string out "SUB"
        | MUL       ->  output_string out "MUL"
        | DIV       ->  output_string out "DIV"
        | AND       ->  output_string out "AND"
        | OR        ->  output_string out "OR"
        | NOT       ->  output_string out "NOT"
        | CNE       ->  output_string out "CNE"
        | CG        ->  output_string out "CG"
        | CGE       ->  output_string out "CGE"
        | JNE       ->  output_string out "JNE"
        | GOTO      ->  output_string out "GOTO"
        | PARAM     ->  output_string out "PARAM"
        | CALL      ->  output_string out "CALL"
        | RET       ->  output_string out "RET"
        | NOP       ->  output_string out "NOP"
        | HALT      ->  output_string out "HALT"
        | OUT       ->  output_string out "OUT"