SRON go through updates and fixes everytime, someone reports some bugs and vulnerabilities.
Many contributors reported that they found memory leaks and related bugs in SRON. SRON's Garbage Collector manages memory automatically and avoid any type of memory leaks making SRON, a safe and stable language.
'Collective', a abstracted-base type of 'String' and 'List'. You cannot directly create 'Collective' variables but it works in abstracted format behind 'String' and 'List' type values.
SRON provides argument checks for runtime using Int_s, Double_s, Char_s, String_s, Bool_s and List_s. These keywords checks the type of arguments passed to a function and if the passed argument is not of expected type, then throws the exception.
SRON is now a statically + dynamically typed programming language. For static typing use Int, Double, Char, Bool, String and List.
SRON version 2.1's compiler is a 3-phased vector-based compiler. It checks the source code, detects syntax errors and displays accurate error messages for great developer experience.
Added bitwise operators to optimize your code on a whole another level. Introducing xor, lsft(left shift), rsft(right shift), and(bitwise and) , or(bitwise or) and not(bitwise not).
SRON's compiler is highly optimized for big codebases. Also, the memory usage of compiler is reduced by 75%.
SRON's compiler removes dead code and unimportant tokens to generate highly optimized bytecode. Also, it hashes variables, inbuilt function etc. to reduce memory and power usage during runtime and increase the speed massively.
For faster, efficient and optimized printing of values in command line, use 'console' attribute which will not create argument list like 'print' functions and linearly prints the values in console removing extra overheads and improved performance. Constant values written in 'console' attribute is written as it to reduce memory usage.
SRON version 1.5 has various memory leaks, bugs and vulnerabilities. SRON version 2.1 fixed almost 54+ bugs and vulnerabilities all of them making it more stable language.
SRON version 2.1 adds foreach loop for faster value access with easy syntax.
SRON interpreter's memory usage is decreased by 72%. Power usage decreased by 50%. Speed is increased by 48% for multiple scenarios.
Versions before 2.1 have 'comment' attribute to make comments but in this new version, 'comment' attribute is removed.
Now make comments using '@'. You can even make multiline comments (only outside the function scope) using '@' if there is '{' and you want to make it comment line. '@' will move the compiler source code read's seek to the next line.
SRON's Mathematical block are now declared using '~{' instead of using '~' only.
Assignment operators are fast and quick, also it do not change the underlying type of the variable. SRON's version 2.1 provides +=, -=, *=, /=, %= and ^= assignment operators.
In SRON version 1.5 and before, we use numeric attributes but the new version 2.1 removed this to make writing code more faster and readable.
SRON is now an open source programming language. Go here and read.
Precedence of '<=' , '>=' , '>' , '<' '==' , '!=' changed. Now, <=, >=, <, > will have higher precedence than == and !=.
The new SRON version 2.1 provides you the feature to set the return type of the function using 'type' attribute.
To swap values of two variables efficiently or shifting many values, then use 'rotate' attribute which will optimize the process during compile time resulting in faster performance.
Before version 2.1, the bytecode generated by the compiler is in text format which makes it easier to decompile and change. SRON's version 2.1 introduces a whole new bytecode format which is in binary so making changes and decompiling it is near to impossible.
To check if the type of both values is same and so their content, then use this operator. It compares the values after their types is same.