Releases: Robotnik08/cdosato
Releases · Robotnik08/cdosato
Dosato v0.6.8
New Features
match
master keyword, switch without fallthrough- new standard library functions for arrays
- new random array get function
Bug fixes
- unary operators and typecasting now parses correctly with function calls and brackets
- Fixed some more crash bugs
Dosato v0.6.7
New Features
- gcd, lcm functions
- Strict equals operator
===
and!==
- Any variable can be used as a key
Changes
- Removal of freedom of casing
- Tokeniser speedup over 20 times
- Better Unit tests
Bug fixes
- Garbage collector bugs with classes fixed
- Catch now correctly captures state
Dosato v0.6.6
New features
find
function to find the first instance in the array matching a condition- Strings are now iterable when using a for loop
Bug fixes
- Garbage collector speedup by changing the algorithem from O(n^2) to O(n)
- Default arguments now have the correct types
- String split function now uses the correct behauvior with bigger delimiters
- Improved performance by introducing Super Instructions for common instruction pairs
Dosato v0.6.5
New features
count
andsum
functions for arrayscreateDirectory
,deleteDirectory
,directoryExists
andgetFiles
for file management
Bug fixes
- String corruption bug with appending arrays using the
+
operator
Dosato v0.6.4
Changes
- null now equals null
Dosato v0.6.3
Bug fixes
- String literals would override constant index for template literals containing the
"
character - Stack bug with functions being called by C functions (API functions map, filter, etc)
- Updated dosato library API header
Removals
- uppercase versions of constants, this means older pre 0.6.2 code is semi unsupported
Dosato v0.6.2
This version is semi-unsupported for code written in previous versions, a few standard library functions have been renamed
New Features
map
,reduce
,some
,filter
andevery
functions for arrayskeys
,values
,entries
functions for Objects
Changes
Changed a lot of naming in the standard library, updated documentation soon.
Dosato v0.6.1
Unless and until keywords
They are the opposite of when
and while
keywords
Dosato v0.6
Code written for previous are not backwards compatible with 0.6
New features
If master keyword
If statements now work as a master keyword
if true then sayln("Yes") else sayln("No")
New for loop syntax
For loops no longer use the as keyword, they use the in keyword now.
The identifier is now up front, and discard for loops no longer require the _ identifier
do sayln(i) for i in range(100) // normal for loop
do sayln(true) for range(100) // discard for loop
Default arguments
Defaut arguments for functions are now added
define int add (int a, int b = 1) {
return a + b
}
do sayln(add(1)) // 2
do sayln(add(1, 1)) // 2
do sayln(add(1, 2)) // 3
Fixes
- String standard library memory fixed
- Do statements no longer can be empty
Dosato Version 0.5.2
New Features
- Enums have been added to the language, with the enum master keyword
More information on enums can be found in the documentation.
Fixed Bugs
- Some errors pointed at the wrong token, this is fixed