blz v2.6 changelog
After 7 months and nearly 200 commits, blz version 2.6 is ready for release.
To install blz v2.6, see
instructions on the docs site
Here's whats new in v2.6
- File Operations and Network Operations
- Testing Support
- Visual Studio Code Extension
- Custom Comparison Functions
- Lambda Functions
- Custom Error Handling
- JSON / CSV Parsing Packages
- Massively Improved Error Messages
- Docs Site
- Web Shell
- Tons of smaller stuff
File Operations and Network Operations
blz version 2.6 adds 2 new libraries to help read and write to file or network resources.
The
FileSystem package allows you to open resources.
The Core package now includes
resource operations to read or write to open resources.
Reading from a file is simple.
As is reading from a website.
Testing Support
blz v2.6 adds a new
Test package to help you write tests for your blz code.
All assertions start with the
expect helper method. You can
expect that something is, is_not, is_true and much more.
A new
command line option has been added that lets you run all tests and only tests.
This will simply run all methods that start with
test in the specified files
Visual Studio Code Extension
A Visual Studio Code extension has been developed that gives blz syntax highlighting
The extension is now available on the marketplace.
You should be prompted to install it when opening a .blz file, but you can also find it
here.
Comparison Functions In Constructors
You can now specify
== and
< functions in your constructor.
From these two methods, all other comparison operators will be inferred (>, >=, !=, etc).
Lambda Functions
blz now supports lambda functions.
Simply use the syntax
arg1, arg2, arg3 -> result to declare one
Here's an example using the
map function
Error Handling
blz v2.6 adds the try-catch block that can be used to catch errors.
Errors can also be thrown with the new
throw keyword
JSON / CSV Parsing Packages
blz v2.6 includes the
JSON and
CSV packages to assist with parsing .json and .csv files.
Massively Improved Error Messages
Runtime errors now give a full stack trace.
Errors will also include the line number where the problem occured.
An added lexer makes catching syntax errors much easier.
Many more syntax errors are correctly reported, and errors themselves should be more verbose.
Docs Site
A new
docs site has been made that hosts all the information previously on github.
A ton more documentation has been written for this release.
Web Shell
An interactive webshell has been made, give it a try.
Thanks and info about getting involved
Special thanks to James Vaughan, and Vinh Nguyen who have been helping me with different parts of the language ecosystem.
If you would like to get involved, see the
issues page.
There are plenty of easy tasks to get started, and we would love to see more contributors!
More Complete Changelog
A more complete changelog is available
here