🎉 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!

Mmmm, boost::spirit

Published July 21, 2008
Advertisement
I have officially fallen in deep love with boost::spirit. In the space of a couple of hours, I threw together a working grammar for parsing the "pure" Epoch syntax example I posted earlier.

Currently it just parses the syntax, without doing any semantic analysis. I expect that actually getting the semantics shifted over into the VM will be the real hard part, especially since I have to come up with a good way to handle syntax errors.

The happy part of all this is that Epoch is now officially out of the realm of a VM-only hack; it's actually a viable language with a working syntax that is nearly ready for actual in-the-wild usage. I'm really looking forward to tackling the semantic analysis part of things and getting externally written code to run in the VM.


So what's next after the VM can run live code? I'm not entirely sure yet, but there's a few candidates:

  • Integration with C/C++ to allow calls into Win32 (with plans to build a marshalling layer for .Net interoperability later on)

  • More low-level services like file IO (so I can do the Sudoku program I originally planned on doing)

  • Starting to play with the type system a bit

  • Starting to work on the syntactic sugar preparser

  • Working on expanding the builtin type support for things beyond strings (arrays, hashmaps, etc.)


Whatever ends up getting picked, there's certainly plenty of work left to do before this thing is a truly viable language.


I have a feeling that I've finished the easy part, and it's all heavy lifting from here. But I guess we'll find out soon enough.
Previous Entry Musings on Epoch
Next Entry The Parser Lives!
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