Crosscut

Daily Thought - 2024-12-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

After about a month, I think it's time for another development update! So, previously I declared that I was going for type annotations over inference, on every single expression. Very tedious, but a safe baseline. Well, that didn't work out 😄

I added support for optional type annotations to the parser, and started annotating the code of the Snake game. And yes, this was very tedious, so I figured, hey, why not implement a tiny bit of type inference to ease the load. Some cases are easy, after all. After that, I kinda never stopped. And now, weeks later, type inference is almost complete!

Making a second go at it, I (of course) benefited from the first failed attempt. I'm currently working on one more bug, and once that is addressed, it should be complete, except for two cases: generic functions and divergent functions. Each would require extensions to the type system that I don't want to take on right now, so there will still be type annotations in those situations.

<< 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.