This week we take a close look at the language Inko from two perspectives: The language design features that make it special, and the realities of being a language developer.
Yorick Peterse joins us to discuss why he’s building Inko, and which design sweetspots he’s looking for. We begin with memory management, aiming for the kind of developer who wants control, but without the complexities of Rust. Then we look at the designing for concurrency with typed channels, and handling exceptions by removing them and leaning heavily into ADTs and pattern matching.
Mixed in with all that is a discussion on the realities of being a programming language developer. How do you figure out how to implement your ideas? What tradeoffs do you make and what kind of programmer do you want to be most useful to? How do you teach people new ideas in programming, and how “different” can you make a language before it feels weird? And perhaps the hardest question of all: How do you fund a new programming language in 2024?
–
Inko’s Homepage: https://inko-lang.org/
Yorick’s Homepage: https://yorickpeterse.com/
Ownership You Can Count On (paper): https://inko-lang.org/papers/ownership.pdf
“The Error Model”: https://joeduffyblog.com/2016/02/07/the-error-model/
Kris on Mastodon: http://mastodon.social/@krisajenkins
Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/
Kris on Twitter: https://twitter.com/krisajenkins