C
CedSharp
Guest
The only big issue here is that I don't think that Processing let's me create a deviation of their compiler to compile ( or translate should I say ) into valid GML.Yea that is why it surprised me nobody mentioned the Processing language.
Not only is this exactly what OP wants to make but all nGML code I've seen in this thread has turned to be perfectly valid Processing code as well!
They have even made the "notepad" OP was talking about.
Deja Vu huh?
I don't want to abandon the idea of a minimalist game making language though. That's I think it's better to make game engine for Processing (inspired by Game Maker) because Processing is a general purpose language.
Or if we still want to create a new language we need to consider its advantages.
Know that maintaining a compiler is a nightmare compared to maintaining a library.
My language is inspired of many language that I've used in the past, and the goal was, for me at least, to create a language that feels more like
those languages and take what I considered being the best of each and mix them together.
The second big point of my language is that because I'm the one parsing and compiling your code, I have full control over how your language is translated in gml.
The compiler is the one to handle the errors such as public/private property access, checking if a class is available or not, checking if variables exists or not, etc.
The resulting gml is not intended to be Human modifyable ( but I'm trying to make it so you can read it without problems ) and will not check for errors.
For instance, some of the generated scripts by the compiler are as follow:
Code:
ngml_new_class( ngmlClasses.Player, 16, 256 ); // new Player( 16, 256 )
var player_name = ngml_prop_get( ngmlClasses.Player, ngmlPlayerProps.name ); // String player_name = player.name;
ngml_method( ngmlClasses.Player, ngmlPlayerMethods.move, 32, 32 ); // player.move( 32, 32 )
So if you were to write code yourself directly in the generated gml, you could... sorry about my terms, but f*ck it up
I'll look into Processing.
But again, the only problem I have is that I didn't intend to make a new game engine, just have a "code only" alternative to gml