subroutine threaded code is different from native code in that everything is a call including to constructs like if take this code in forth x if true then etc an stc potentially generates numbers are there to discuss in text call call if call call call then etc tucks the address of the label on the return stack by popping the caller's return address pushing address of and returning if pops and checks the top of the data stack if it's zero then jump to label else return and so on is in fact a no op but it's sometimes generated so that the code can be decompiled easily by printing off the labels in the symbol table called a dictionary in forth associated with the called address there are very few forths that use stc in this extreme form and a blend between stc and ncc native code compilation is normally used an itc is the same code but with addresses only and no call opcode a small vm interpreter does the call return management