Fantom is an object-oriented and functional programming language that runs on the JVM, CLR and JavaScript engines. It features type inference, literals, functions, closures, mixins, and support for Java and JavaScript interoperability. Fantom has a built-in modular system and declarative build tools. It aims to balance static and dynamic typing with safety features like null safety and immutable/constant types and data structures.