🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Bringing you Teh Win since 2005

Published March 02, 2009
Advertisement
Wasn't quite as productive over the weekend as I hoped (dang social life keeps getting in the way) but I've made a fair bit of progress. Libraries can now register structures, function signatures, and constants with the VM. This means I can simply load the "Win32Util" library in an Epoch program, and I instantly have access to a handful of Win32 API calls, all shrouded in a nice Epoch layer of safety. This makes the resulting program far cleaner, since all the nasty external declarations go away.

Speaking of safety... I discovered a pretty major bug in the type checking code. When passing a function to a structure or tuple, the signature of the function is not checked. So I can declare a structure member that expects a Foo function, and then assign in a Bar function. If the structure member is then invoked, I call a Bar which really should be a Foo, and the VM decides it wants to revisit its lunch. That'll take some delicate surgery to fix, but nothing too critical.

Other than that, my task list remains largely unchanged. I have done some serious thinking about my project priorities, however. In particular, I'm not sure I want to put all my pre-GDC effort into the IDE project. The point of the GDC release is to show off the language technology and what it can do for multiprocessing; if there's no multiprocessing at all, then there's no point.

So I'll likely be shifting the IDE project back rather far, and focusing on a basic threading model first. Once that's in place it should be much easier (and more convincing) to say "here, look at this multitasking code; now imagine adding one keyword that magically causes the code to run on the GPU."


Essentially at this point I want to get things as polished and clean as I can. My goal is to demo the language's capabilities first and foremost, and to illustrate my own abilities as a secondary bonus. That means code needs to be documented, clean, and well designed. Unfortunately a few major features are still in dirty-hack mode, so I'll be prioritizing those issues. Ideally, the GDC release should be a well-polished stable fork, and not a nasty half-implemented unstable fork.


Anyways - three weeks and counting! Should be an interesting time.
0 likes 0 comments

Comments

Nobody has left a comment. You can be the first!
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement