Day 15: Rudolph on Raku

Finding a way home to the North pole with Physics::Navigation So, Rudolph has been worried about getting Santa and the other reindeer back home to the North Pole after an exhausting flight to visit all the (well-behaved) Children on the Globe. He has heard a rumour that the North Pole keeps moving due to theContinue reading “Day 15: Rudolph on Raku”

Day 14: Writing Faster Raku code, Part I

By Wim Vanderbauwhede Last year, in Perl land, I discussed the result of my attempts to optimize the performance of an expression parser which is part of my Perl-based Fortran source-to-source compiler. An expression parser takes strings representing expressions in a programming language (in my case Fortran) and turns it into a data structure calledContinue reading “Day 14: Writing Faster Raku code, Part I”

Day 13 – Helping the Github Action elves

As a Raku Programming Language module developer, you are sometimes surprised by the tools that you use. In this case, yours truly was surprised by a recent update of the excellent App::Mi6 tool by Shoichi Kaji. After an upgrade, it started adding a .github/workflows/test.yml file to new distributions. And this in turn caused Github to test the distribution after each commit using GithubContinue reading “Day 13 – Helping the Github Action elves”

Day 12: That Raku feeling

When we talk about measuring time, we could be thinking of a number of different ways to measure a number of different things. But in principle, I suppose we could group them into two large categories: We could be measuring the time that has passed in relation to some previous event, to see for exampleContinue reading “Day 12: That Raku feeling”

Day 11: Santa Claus TWEAKs with a Class

Prologue Santa [1][2] was browsing the eTrade magazines on his iPad one morning and came across an article referenced in the latest O’Reilly Programming Newsletter about how ancient COBOL is the programming language still used for the bulk of the world’s business software. He had been aware of that since his huge operations with millionsContinue reading “Day 11: Santa Claus TWEAKs with a Class”

Day 10: My 10 commandments for Raku performances

1. The profiler you will use Raku has a nice visual profiler. No excuse to ignore it, it is extremely simple to use. Just run the profiler with raku –profile=myprofile.html foo.raku then open the generated HTML file in your favorite browser (for instance firefox myprofile.html &). This is an overview of what you can haveContinue reading “Day 10: My 10 commandments for Raku performances”

Day 9: Getting Windows Memory Usage with NativeCall

Raku NativeCalls provide a way to interact with dynamic libraries that follow the C calling convention and are very useful for obtaining information from the operating system, such as memory usage. In this article we will see how to get the memory usage from a Windows system. The MEMORYSTATUSEX C++ structure Win32 API provides theContinue reading “Day 9: Getting Windows Memory Usage with NativeCall”

Day 8: Raku web templating engines: boost up the parsing performance

Modern Raku web templating engines A templating engine basically provides tools for effective metadata interpolation inside static files (templates). At web application runtime, the engine parses and replaces variables with actual content values. Finally client gets a HTML page generated from the template, where all metadata (variables, statements, expressions) has been processed. Raku ecosystem hasContinue reading “Day 8: Raku web templating engines: boost up the parsing performance”

Day 7: Mixing Bash and Raku Using Sparrow

Sparrow is a Raku automation framework which could be easily integrated with many other programming languages. So if you come from no knowledge of the Raku language – you’re welcome. In this post I’ll show you have one can effectively mix Bash scripts and Raku language using Sparrow. The idea of Sparrow – to chooseContinue reading “Day 7: Mixing Bash and Raku Using Sparrow”

Day 6: Declarative APIs, easy peasy with Raku

Raku APIs tend to be easy to read, with named arguments alleviating the need to remember argument order in method calls, for example. But sometimes a library author goes above and beyond to produce extra nice, declarative APIs. One example is Cro, a framework for writing HTTP-based services, which allows you to write things likeContinue reading “Day 6: Declarative APIs, easy peasy with Raku”