Anyway, I've been reading Game Scripting Mastery (So far covered the language, the assembler and the VM), and all the time I'm thinking "I could do that better". So I'm going to.
As a little side project, I'm going to make my own scripting language; DruinkScript. As the book does, I'll work on the assembly part first, and I'll have a fair bit more instructions than it does.
Key features of the intended DruinkScript:
- Syntax similar to x86 assembly, except for functions which will be implemented looking like C / Lua. Example:
Or something like that anyway.
- Pleanty of registers. I'm thinking 32 or 64 string and integer/float registers. Means less screwing about with the stack
- An extensive debugger. I want to be able to connect an external debugger application to the program executing the script, which will connect with a socket. That debugger should be able to do everything the MSVC debugger can do (Except edit and continue), source code lines (when the compiler is done), register values, stack values, variable watch, breakpoints, watchpoints, etc
- Ability to compile / assemble scripts as debug or release. Debug will have debug info in them, Release won't.
- Ability to compile DruinkScript as debug or release. Debug includes the debugger and will probably have more runtime checks
I think that'll do for a decent sized side project.