Python is used to generate programs in an imperative, type inferred, and intermediate language called SmartML. SmartML is the name of the OCaml library that provides an interpreter, a compiler to Michelson, and a scenario “on-chain” interpreter. The platform uses a mix of OCaml translated to pure javascript through js_of_ocaml, Python, and Typescript to glue everything together. The command-line interface is also built using js_of_ocaml and runs on Node.js.