I think ML semantics could be implemented in Forth, the main concept that would be needed is a local envrironment. Forth, at least the one I use, only has a global environment.
Map in Ocaml:
let rec map f l = if l = [] then [] else f (hd l) :: map f (tl l)
could be expressed:
: map {l f} l [] = if [] else l hd f a f l tl map :: ;
a would be the apply function. {l f} would denote a binding, binding the top stack element to l, the second stack element to f. In colorForth, :, {}, ;, could be replaced by color.
I don't have any interest in seeing this through at the moment, just a thought for now.