Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

This sounds like an interesting project.

Do you have a goal in mind for using the language?

I'm not trained in computer science, but if you wanted to improve performance, have you ever looked at how a native c++ or other natural programming language operates?

As I understand things, the normal process appears to be that programs coded in languages like c++ are directly converted to machine code when compiled, where as for a scripting language, the code is interpreted back to machine code via a VM, or a similar process through a natural programming language, that converts the script on the fly.

If you were able to perform that interpretation on building your program, you could possibly increase performance without a VM because you wouldn't need to interpret the scripting language on runtime.  If this reduces the flexibility of your language, then you might need to build something akin to a VM that can convert your script more quickly.

Again, I'm not an expert, but I would think a VM would act like an interface for converting your script into machine code.  Your script would likely need to be loaded into memory and then the VM would interpret what is needed at the correct time (e.g. functions and classes, routines and co-routines).

Either way you look at the performance problem, it seems to me that you would need to go from your scripting language (user friendly), back to either a natural programming language or machine code (computer friendly).  And either at build time or run time.

Hope this gives you some ideas.  I can tell you now that I don't have the knowledge to help further, but good luck with it.

(+1)

Hi, thank you for your response!

You're right, for a native running program, it's compiled and then linked together, so in the end it results in byte code that is run by the processor of the computer, where scripting languages can be interpreted by a VM via turning it into an intermediate byte code with an own designed instruction set, so execution is faster. Yes, currently my script language interprets on runtime, which is the bottleneck here. I've considered to build a VM system, but then didn't go ahead, as the original purpose of the language is the same as AutoIt or AutoHotKey: Performing administrative tasks or creating scripted applications for specific tasks. And for that it runs just fine.

But recently I thought, it would be cool to also make it way more performant speed wise, so you could also create more small games with it. I'll need to do some research tho, as creating a VM for a scripting language is not that trivial, but definitely doable.

Thanks for liking my project. :)