 A procedural programming language without type checking , Forth features both interactive execution of commands ( making it suitable as a shell for systems that lack a more formal operating system ) and the ability to compile sequences of commands for later execution . Some Forth implementations ( usually early versions or those written to be extremely portable ) compile threaded code , but many implementations today generate optimized machine code like other language compilers . 
