Tremendous amount of time have been spent solely for expression parsing, ‘cause I want that stupid shitpile to work in a proper way.
I’ve just now successfully rewritten the compiling part to in a cleaner way parse expressions and statements, and dahym it’s working like a charm.
With the new system I can much easier handle expressions; look at their content and for example, remove unneeded parentheses, extract statements that needs to compile ahead of time, and other fun stuff.
So in the spirit of not-enough-chores-at-work I’ve today found a sickly bad workaround for how to handle try-catch statements.
My solution is (like the code of your website) solved by a clump of workarounds to achieve a pretty simple goal. Howevery, because of my humbleness, I find my solution to be quite best and 300IQ’d.
The G1ANT.Robot lang has some sort of error handling built in, which is nice; but only for commands. What you can do is to append the arguments errorresult and errorjump to any command, and they’ll catch ‘em all. Like take a peakis at this dungus script example:
Ever been so tired of the syntax of a programming language that you just couldn’t stand it? But in the meantime being forced to use it because of your workplace? So you develop a new language to compensate so you don’t have to handle the absolute shitstorm headaches from using the language?
I know I am. (Because I have a lot of free time at the moment)
Welcome to the devlog of Robot++. A compiler written in C# that translates the syntax of my made up language Robot++ into executable G1ANT.Robot code.
On todays report of my mission in “trying to embarrass the G1ANT developers by making a compiler as a statement of how bad they are at making a language” is some progress pics!