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"