Here’s a quick update on this language and where they’re currently at.
Two years back, the Internet Computer team confirmed the launch of Motoko, an actor-based programming language “designed for the Internet Computer.”
A lot has happened since then — most notably, the Internet Computer “finally underwent Genesis and launched.”
As stated in the update:
“Since then, many projects have adopted Motoko for development and are running on the Internet Computer, with some 400 repositories on GitHub. Projects and repos are becoming more technically complex, with dapps and open internet services employing different canisters where the core ‘business logic’ is written in Motoko, but an associated data storage or token might be implemented in Rust.”
In that way, they are seeing “increasingly dynamic systems enabled by WebAssembly,” the update revealed.
The Motoko team has also “not been idle over the past year,” the update noted while adding that they’re working on enhancing Motoko, “both the language and its implementation, and on making it more easily available and accessible.”
As noted in a blog post, the most significant milestone for the Motoko team was that the language and its libraries have been open-sourced.
The announcement added:
“We had been working toward that goal for a long time, but various technical and organizational blockers (such as testing infrastructure) had to be addressed before it could finally happen. Motoko and its base library are now public on GitHub, including all sources and the full issue and commit history, open for external contributors.”
The update further noted:
“Perhaps even more visibly, the Motoko Playground launched. By allowing users to deploy and test canisters through a simple web page, it vastly reduces the barrier to entry for playing with the Motoko language and the Internet Computer. We on the Motoko team find ourselves using the Playground all the time to try out simple things in a fully-featured Motoko+IC environment.”
Vessel, the package manager for Motoko, has become a more “central part” of the Motoko ecosystem as well, and allows developers to “pull libraries from third parties into their projects or make their own libraries available to other projects,” the update explained.
Additionally, there have been many enhancements and additions to the Motoko documentation, though of course there is “more to do.” The documentation is currently open source as well, and the team is welcoming contributions from the community, “either in the form of suggestions for improvement or actual material,” the announcement confirmed
As noted in the blog post, the most critical project for the team right now is to “make Motoko’s use of memory more scalable.”
As noted in the update, Motoko is a managed language, “meaning that programmers are freed from worrying about the nitty-gritty and error-prone details of memory management.”
The blog post also mentioned that this is achieved by “a garbage collector, a piece of code added by the Motoko compiler that discovers when data is no longer needed and the space it uses can be reclaimed.”
Garbage collectors are used in “all high-level programming languages, and their state of the art has reached a level of sophistication that beats most manual attempts to manage memory,” the update explained.
The announcement concluded:
“Of course, a language is worth little without its community. We have been thrilled by the positive reactions we received for the language — as well as the constructive criticism and suggestions for improvements. Please bear with us if some things take time. We would like to take this opportunity to invite the community to contribute to Motoko, its libraries, documentation, and ecosystem.”
You can check out the complete announcement here.