One of the biggest goals of Tourmaline since its inception has been to make things easier on the bot developer, while also limiting the possibility of runtime exceptions that cause the bot to go down. Those are both reasons why I chose Crystal as the language to build this framework on, as it's both easy to use with a beauitful syntax, and compiled with a strong type system which keeps you (for the most part) from making mistakes that could prove fatal during runtime. Well today I'm happy to announce a couple changes to the framework itself that should also serve to make life easier on you, the bot developer.
Sorry it's been a while, anyone out there who might actually be reading this blog. Today I made a few changes that offer some pretty significant performance increases though, and as a bonus don't require any changes to existing code! So I wanted to take a minute and explain those changes, the benefits offered, and how I was able to find the bottleneck in the first place.
Persistence is a big deal for many bots, but providing an easy to use API for persistence is not a simple task. There are many reasons behind this, but the main one is that users tend to want multiple backends, and all of those backends have to be provided through an API that doesn't change between implementations.
Well here we are again. It's been 4 days since my last post where I went over
Filters and now here we are with a
v0.16.0 release. Mostly small things have changed besides the
Filter stuff, but let's go over the few things you may care about.
In yesterday's post I explained some changes to the Tourmaline API, and my rationale for making those changes. After writing that post I had a somewhat better idea of where exactly I wanted to take those changes, so in this post I'll go over the conclusions I made.
Well another day another update. Today I decided to to some work on the event handling, because it wasn't quite up to my standard of quality. It's still not quite there, but I think anyone using the project will appreciate this addition.
Well it's been a long time coming, but here it is. With Crystal nearing version 1, the recent changes to the bot API, and just general boredom from being stuck at home while the world goes to crap I figured there would never be a better time to create a real doc site for Tourmaline.