Home
Glossary
Motoko Programming Language (DFINITY)
The programming language for developing projects to run on the Internet Computer blockchain.
What Is Motoko Programming Language (DFINITY)?
Motoko is a new, general-purpose programming language built for the decentralized internet. It is designed to be secure and developer-friendly. Motoko will enable a new generation of decentralized applications to be built by teams of developers with diverse skill sets.
DFINITY is a new, public blockchain computer that will provide a decentralized cloud computing resource. It will be the first blockchain computer to support smart contracts based on the WebAssembly (WASM) virtual machine format, allowing developers to write secure, high-performance smart contracts in any programming language that complies with WASM.
DFINITY uses its own programming language called Motoko. Motoko is a modular functional programming language designed for building smart contracts on DFINITY’s blockchain computer. It features:
-
Strong static typing with type inference.
-
Algebraic data types for pattern matching.
-
First-class functions with lexical closures.
-
High-level safety features such as automatic memory management, enforced immutability, and referential transparency.
Motoko provides a rich set of abstractions, data types, and concurrency primitives that allow developers to create sophisticated applications without having to deal with lower-level infrastructure concerns such as message passing, memory management, or garbage collection.
Motoko was developed as an exercise in language design to explore what a modern programming language would look like if it were able to take advantage of the Internet Computer’s unique security model and decentralized architecture.
The Internet Computer Protocol is a groundbreaking blockchain protocol that enables producers to run general-purpose software in a decentralized manner.