Primer on Database Types

Covers the major types of databases and when to use which type

Intro Hello! This article gives you an overview of the major database types, a summary of how they work, and when and why you should use one. This is not a short entry. Sorry. =) CAP Theorem You may have heard this term whispered amongst your colleagues. While it is an actual theorem, and an important one, people often take different meanings away after hearing about it.

So You Want to Build a Language VM - Part 27 - Clustering: Part 1

Begins adding in clustering


Hello everyone! The delay in tutorials was the result of the website re-work (courtesy of Bitdream), that I hope is less…​awful. In the interim, I did add a few features and fixed some bugs which would not have made for exciting tutorials, so you’ll want to start this tutorial from the latest master. This tutorial, we’re going to get different instances of the VM talking to each other over TCP. They won’t do much, but they’ll at least be able to connect.

This Week in Iridium - #7

Summary of what happened in the seventh week

Week 7 Hello! Below is a list of changes made this week in Iridium and Palladium The tutorials this week start here: Changes: Multi-user remote access (with no security) to REPLs. Thrussh proved unworkable, so we did straight TCP and will add encryption and AAA on top Added in support for f64 in Iridium ASM. f64 instructions have the suffix F64.

So You Want to Build a Language VM - Part 26 - Adding Floating Point Support

Extends the VM to handle floating point numbers


Hi everyone! In this tutorial, we’re going to upgrade our VM to support floating point numbers. In the previous tutorial, we added support to the Palladium language, so we kind of need to support it in the VM as well. =) Before we get to implementation, let’s have a quick review of numbers. == Numbers If you already know what a floating point number is, feel free to skip this part. If not, read on for a quick review.

So You Want to Build a Language VM - Part 25 - Extending Palladium: Part 1

Extends Palladium to handle more complex arithmetic expressions


Hey everyone! For this tutorial, we’re going to switch tracks and work on Palladium a bit. Right now, it handles simple arithmetic expressions, such as 2+1, and that’s it. Let’s see if we can get it to handle something more complex. === Goals

So You Want to Build a Language VM - Part 24 - SSH Server: Part 2

Finishes adding an SSH server to the Iridium VM


So, change of plans. I’ve been fighting with thrussh for hours now trying to get SSH working. The key exchange was failing, and I had no idea why. It turned out that even their example client/server didn’t work when I tried. Despite spending a lot of time going through the source, I couldn’t find the cause of the issue. The crate uses futures very heavily, which makes the program flow hard to follow, at least for me. I’m sure that somewhere in the world there is someone who has no problem following futures-based async, but it isn’t me. In light of this, I decided to go old school. I’m leaving the previous tutorial part up; I think its important to see this aspect of projects as well. Having to scrap something that doesn’t work out and pivot to something else.

This Week in Iridium - #6

Summary of what happened in the sixth week

Week 6 Hello! Below is a list of changes made this week in Iridium The tutorials this week start here: Code Changes Two PRs from yjhmelody (the first non-me contributor to the project, yay!) simplified some of my horrific code and made some test names more consistent. VM Changes (all with tutorials) Basic Benchmarking Started on adding in parallelism via OS threads