In this web content, the author reflects on their journey of building their programming language, Inko, since 2013. They experimented with various languages before settling on Rust as the foundation for Inko. Over the years, Inko has evolved from an interpreted language inspired by Ruby and Smalltalk to a statically-typed language that compiles to machine code using LLVM. The author shares some lessons they have learned, including the drawbacks of gradual typing, the challenges of self-hosting a compiler, the complexity of building native code generators and linkers, and the importance of prioritizing functionality over performance. They also discuss the difficulties of growing a language and highlight the value of writing real applications as test cases. Finally, the author emphasizes that building a successful language takes time and patience, often spanning at least 10-15 years.
https://yorickpeterse.com/articles/a-decade-of-developing-a-programming-language/