Third draft. It works! However, I have to imporve the error message system which is more than naive (dumb?) and bring a smart solution which can handle errors while resolving variable and function name. To finish, some functions into RuleChecker aren't fully working while resolving type parameter during compilation.