Day 25 – Future-proofing the Raku Programming Language

Around this time last year, Jonathan Worthington was writing their Advent Post called Reminiscence, refinement, revolution. Today, yours truly finds themselves writing a similar blog post after what can only be called a peculiar year in the world. The Language Visible Changes The most visible highlights in the Raku Programming Language are basically: last / next with a value Normally, last just stopsContinue reading “Day 25 – Future-proofing the Raku Programming Language”

Day 23 – The Life of Raku Module Authoring

by Tony O’Dell Hello, world! This article is a lot about fez and how you can get started writing your first module and making it available to other users. Presuming you have rakudo and zef installed, install fez! Make sure that the last line is in your $PATH so the next set of commands all run smoothly. Now we can start writing the actualContinue reading “Day 23 – The Life of Raku Module Authoring”

Day 19 – Let it Cro

Ah, advent. That time of year when the shops are filled with the sound of Christmas songs – largely, the very same ones they played when I was a kid. They’re a bit corny, but the familiarity is somehow reassuring. And what better way to learn about this year’s new Cro features than through the words ofContinue reading “Day 19 – Let it Cro”

Day 17 – Generic data structure traversals with roles and introspection

Generic datastructure traversals with roles and introspection I am a lambdacamel and therefore I like to adapt concepts and techniques from functional programming, and in particular from the Haskell language, to Raku. One of the techniques that I use a lot is generic traversals, also known as “Scrap Your Boilerplate” after the title of theContinue reading “Day 17 – Generic data structure traversals with roles and introspection”

Day 12 – A long journey to Ethereum signatures

The Ethereum blockchain is essentially a transaction-based state machine. We begin with a blank state, before any transactions have happened on the network, and move into some final state when transactions are executed. The state of Ethereum relies on past transactions. These transactions are grouped into blocks and each block is chained together with itsContinue reading “Day 12 – A long journey to Ethereum signatures”

Day 11 – Unix philosophy without left-pad, Part 2: Minimizing dependencies with a utilities package

In the previous post, I made a case for why programming languages should have a utility library that provides small-but-commonly-needed functions. Today I’m introducing a Raku package that I hope will fill that gap and discussing how this fits with the Unix philosophy

Day 10 – Java Annotations in Raku or my @annotation is role;

Today, a little about the fact that the new is better absorbed through the already known. It so happened that I write for $dayjob in Java, so I will come from this side. Java 1.5 introduces an interesting syntactic form – annotations. It looks something like this: The example shows an annotation @Deprecated that causesContinue reading “Day 10 – Java Annotations in Raku or my @annotation is role;”

Day 9 – Raku code coverage

Although I love using Raku, the fact that it is still a relatively young language means that there is a fair amount that is lacking when it comes to tooling, etc. Until recently, this included a way to calculate code coverage: how much of the code in a library is exercised (=covered) by that library’sContinue reading “Day 9 – Raku code coverage”

Day 8 – Practice… on Advent of Code

“Hrmpf!” mutter mutter mutter “Bah!” The head elf Fooby Nimblecalmy was trying to to read an interesting article on Ramsey Theory, but was having a hard time because the latest addition in Santa’s IT Operations Buzz Bargoosey was steaming like a kettle. Anyway, Fooby was determined to go through the article, so decided to deliberatelyContinue reading “Day 8 – Practice… on Advent of Code”