Crosscut

Daily Thought - 2025-01-26

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!

< back to list

The next item on the list of the previous prototype's many problems is the type system. This was the most recent thing I worked on, and it was actually the trigger for starting to think about a new prototype.

The previous prototype started out being untyped. Meaning there wasn't any type system, not even a dynamic one. Everything was just a 32-bit number, similar to how Forth or assembly tend to work. I devised this as a stopgap, to get the language started without the initial need for designing and building a type system.

And it worked in that capacity! The prototype where I first did this, was also the first that I managed to build a somewhat complete game in. But it was also limiting the language. Most importantly, it was preventing code updates from working reliably. So I started transitioning to a static type system with full type inference, which turned out to be very difficult.

<< previous thoughtnext thought >>

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.