We have successfully developed all the features listed in Section 3.1, which include all the features that we had initially aimed at. The version 4.2.0 contains most of them, with the following restrictions.
Target Architecture.
The current compiler only generates x86-64 and arm64 code and only supports Linux and macOS.
Optimization.
In this version, the compiler is equipped with standard optimizations such as inlining and constant propagation. We hope that we will provide more advanced optimizations, which will make the compiler as fast as other mature compilers.
Limitations on arm64.
Arm64 support is still experimental. Some features do not work similarly to x86_64. For example, on arm64 macOS, exporting an ML function to C sometimes causes the following LLVM error:
LLVM ERROR: INIT_TRAMPOLINE operation is only supported on Linux
This limitation will be resolved in the future versions.