Daily Thought - 2024-04-10
Hey, I'm Hanno! These are my daily thoughts on Crosscut, the programming language I'm creating. If you have any questions, comments, or feedback, please get in touch!
This thought was published before Crosscut was called Crosscut! If it refers to "Caterpillar", that is the old name, just so you know.
My vision for Caterpillar started with interactivity, but that's not where it stayed. I've developed many more ideas that I want to realize with this project. And since I've been using Rust as my primary language for over 10 years, it's my frame of reference. I can't help but think of Caterpillar as an evolution of Rust. A simpler and more powerful form of it.
I think it's possible to get Rust's core benefit, memory safety without runtime overhead, in a much simpler language. A functional language that does away with mutability, hence mutable references. In fact, performance consideration that the compiler can take care of under the hood aside, a reference is basically the same as a clone, so I think we can avoid them completely! (This is not my own idea. I got it from HVM.)
A Rust without references doesn't need a borrow checker, which is one of its most complicated parts. We can get all the benefits with just a linear type system, but none of the other complications. I can't know for sure that this will work out, but I'm optimistic. It's one of the many things that excite me about Caterpillar.
Hey, you! Want to subscribe to my daily thoughts? Just let me know (maybe include a nice message, if you're up for it), and I'll send you an email whenever I post a new one.