I would like to note that doing something natively is a very fuzzy concept, as is interpreter - I noticed the simplest way of implementing brainfuck in ocaml was to build native ocaml functions out of brainfuck code... does that mean that I didn't have to write an interpreter for brainfuck at all?