Skip to content

Releases: Robotnik08/cdosato

Dosato v0.7.0

30 Nov 20:12
35befda

Choose a tag to compare

Note
End of life for cdosato! The dosato intepreter is being remade (with a new better specification) here

Additions TLDR

  • Shorter lambda expressions support
  • Loop keyword
  • Fixes with lambda locality
  • Increment and decrement now works in expression

What's Changed (patch notes)

Full Changelog: v0.6.8...v0.7.0

Dosato v0.6.8

14 Jan 12:15
4fa4770

Choose a tag to compare

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

15 Dec 00:07
6f348d1

Choose a tag to compare

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

07 Dec 23:41
d3d8a2d

Choose a tag to compare

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

01 Dec 16:54
2421a80

Choose a tag to compare

New features

  • count and sum functions for arrays
  • createDirectory, deleteDirectory, directoryExists and getFiles for file management

Bug fixes

  • String corruption bug with appending arrays using the + operator

Dosato v0.6.4

30 Nov 18:47
5b30271

Choose a tag to compare

Changes

  • null now equals null

Dosato v0.6.3

29 Nov 21:45
0580709

Choose a tag to compare

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

26 Nov 22:20
6fc7351

Choose a tag to compare

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 and every functions for arrays
  • keys, values, entries functions for Objects

Changes

Changed a lot of naming in the standard library, updated documentation soon.

Dosato v0.6.1

21 Nov 20:07
dd42893

Choose a tag to compare

Unless and until keywords

They are the opposite of when and while keywords

Dosato v0.6

21 Nov 08:44
d6c766b

Choose a tag to compare

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