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.
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.
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 ==
functions in your constructor.
From these two methods, all other comparison operators will be inferred (>, >=, !=, etc).
blz now supports lambda functions.
Simply use the syntax arg1, arg2, arg3 -> result
to declare one
Here's an example using the map
blz v2.6 adds the try-catch block that can be used to catch errors.
Errors can also be thrown with the new throw
JSON / CSV Parsing Packages
blz v2.6 includes the JSON
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.
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.
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