SSStrictor

One of the most annoying thing while using BlitzMax NG is the NEED to convert everything in a SUPERSTRICT version (due to the way the compiler works!)

Of course, after so many years using BlitzMax, I’m already used to write in ‘superstrict’ mode.

But quite ALL the CODE EXAMPLE are written in plain mode, just few in Strict mode, and very very few in SuperStrict mode.

So another brilliant idea (maybe someone else found already a solution to this and I’m wasting my time… I don’t know :D!)

SSStrictor: the super-strict source code convertor (good as a name of a wrestler!)

Of course it is just a test, written in few minutes.

What it does exactly?

It reads a file (I’m using the AUDIO examples source code) and try to convert it in a superstrict version

This is the original AllocChannel.bmx source code

This is the result

Of course there are so many presumptions (like in the For.. definition, just Int at the moment) and no control in case of nested function, Local conflict etc

But, considering that code examples are ‘basic’ this should be quite enough to make an easy conversion, to test and correct then manually.

At the moment I need to create a dictionary of Commands and return type, adding manually any possible commands (like AllocChannel, CueSound, LoadSound etc)

A smart version should read from

all the definitions required… and automatically build the dictionary.

It doesn’t understand ‘user function’ (in this version) or type-parameter.

 

This is the source code (if you want to test it!)

Enjoy

 

local_offerevent_note October 6, 2017

account_box degac


local_offer

Leave a Reply

Your email address will not be published.