Daily Thought - 2025-01-28
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!
What kind of type system am I going to implement in the new prototype? The end goal is to have a static type system with full type inference. But that has proven to be impractical for the time being; so I have to start with something else and transition later. And as far as I can tell, I have the following options:
- Follow the lead of the previous few prototypes and start without a type system, making the language untyped.
- Start with a simple static type system, with explicit type annotations.
- Start with a dynamic type system.
Making the language untyped was, in some ways, a big success. It was very easy to do and enabled me to build a somewhat complete game in the language. This in turn allowed me to figure out a lot of other things. But that approach turned out to be incompatible with reliable live code updates, making it a non-starter. The choice is between static types with type annotations, or dynamic types.
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.