The posts on this site are grouped into a few series. There is also a free Perl 6 book published as a series of blog posts.

Books

📘 Raku One-Liners — The new book about using the expressive power of the Raku language to create short and useful programs. Free PDF.

📘 Using Raku — The second edition of my previous book that reflects the language name change and includes a number of changes and updates along the text apart from the name. Free PDF.

📘 Using Perl 6 — My third book: 100 programming challenges solved with Perl 6. Free access.

📘 Perl 6 at a Glance — the first book about modern Perl 6. Free access.

Series

💡 Algorithms — a series of posts explaining algorithms implemented in Perl 6.

🎄 Perl 6 One-Liner Advent Calendar — the Advent Calendar of the end of 2018.

📺 Perl 6 videos — screencasts and videos recorded during my talks.

🦋 Perl 6 Syntax with articles about Perl 6 cool features.

🔬 Perl 6 Internals, where I explore the sources of Rakudo Perl 6.

Below is the complete list of blog posts in reversed chronological order.

2019

🦋 110. is rw vs is raw in Raku — 15 October 2019

🦋 109. 42 via the cubes — 7 September 2019

🦋 108. Basic usage of NativeCall — 17 July 2019

💡 107. Odd-even sort in Perl 6 — 28 June 2019

💡 106. Gnome sort in Perl 6 — 28 June 2019

💡 105. Pancake sort in Perl 6 — 27 June 2019

💡 104. Stooge sort in Perl 6 — 26 June 2019

💡 103. Merge sort in Perl 6 — 25 June 2019

💡 102. Insertion sort in Perl 6 — 24 June 2019

💡 101. Quick sort in Perl 6 — 23 June 2019

💡 100. Bubble sort in Perl 6 — 21 June 2019

📺 Perl 6 One-Liners slides — 8 March 2019

📺 Creating a compiler in Perl 6 — 7 March 2019

📺 Perl 6 as a new tool for language compilers — 3 February 2019

2018

🦋 A word about Promises

🔬 The EVAL routine, part 4

🦋 Sleep sort

🔬 The EVAL routine, part 3

🔬 The smartness of the sequence operator, part 2

🎄 26/25. Overview of the Perl 6 One-Liner Advent Calendar 2018 — 24 December

🎄 25/25. Tips and ideas for the Perl 6 Golf code — 24 December

🎄 24/25. Reading files with $*ARGFILES — 24 December

🎄 23/25. Calculating totals — 23 December

🎄 22/25. Reversing a file — 22 December

🎄 21/25. Merging files horizontally — 21 December

🎄 20/25. Using command-line options in Perl 6 one-liners — 20 December

🎄 19/25. Using map and Seq to compute the value of π — 19 December

🎄 18/25. Renaming files — 18 December

🎄 17/25. Playing with prime numbers — 17 December

🎄 16/25. Distance between two points — 16 December

🎄 15/25. Playing with Fibonacci numbers — 15 December

🎄 14/25. Another solution of yesterday’s problem — 14 December

🎄 13/25. How many days in the century match the condition? — 13 December

🎄 12/25. What’s behind 0.1+0.2 — 12 December

🎄 11/25. Solving the Problem 34 — 11 December

🎄 10/25. Reduction operator — 10 December

🎄 9/25. More on X, .., and … — 9 December

🎄 8/25. Adding up even Fibonacci numbers — 8 December

🎄 7/25. The joy of Unicode — 7 December

🎄 6/25. Testing palindromic numbers — 6 December

🎄 5/25. What’s the date today? — 5 December

🎄 4/25. Working with big numbers — 4 December

🎄 3/25. Generating random integers — 3 December

🎄 2/25. Grepping dividable numbers — 2 December

🎄 1/25. Generating random passwords — 1 December

📺 Perl 6 grammars to create a simple interpreter — 17 November

🎁 Christmas sale! — 11 November

📺 Creating a compiler with Perl 6 — 7 November

🔬 75. my $x = $x — 10 April

🦋 74. Typed hashes — 8 April

🔬 73. Keys, values, etc. of hashes — 7 April

🔬 72. Superscripts — 5 April

🔬 71. Implementing Int.sleep() — 4 April

🔬 70. Examining the enum type in Perl 6 — 4 March

🦋 69. Setting timeouts — 3 March

🔬 68. The smartness of the sequence operator, part 1 — 3 March

🔬 67. Redeclaration of a symbol — 2 March

🦋 66. Atomic operations — 1 March

🔬 65. The EVAL routine, part 2 — 1 March

🦋 64. What does gist do? — 28 February

🦋 63. More on the proto keyword — 22 February

🦋 62. The EVAL routine, part 1 — 21 February

🔬 61. Declared in BOOTSTRAP — 20 February

🔬 60. Examining the Real role, part 3 — 19 February

🔬 59. Examining the Real role, part 2 — 18 February

🔬 58. A word on polymod — 17 February

🔬 57. Examining the Real role, part 1 — 16 February

🔬 56. A bit more on Rat vs FatRat in Perl 6 — 15 February

🔬 55. FatRat vs Rat — 14 February

🔬 54. Going over the Bridge , part 2. Let’s get rid of it — 13 February

🔬 53. Going over the Bridge , part 1 — 12 February

🔬 52. An attempt to understand how [*] works — 11 February

🔬 51. Colonpair in Perl 6’s Grammar, part 2 — 10 February

🔬 50. Colonpair in Perl 6’s Grammar, part 1 — 9 February

🔬 49. Dumping 0 but True — 8 February

🔬 48. How does 0 but True work — 7 February

🔬 47. push-all optimisation of List.roll — 6 February

🔬 46. How does ‘pick’ return unique elements (Exploring the pick and the roll methods in Perl 6, part 3) — 5 February

🔬 45. Exploring the pick and the roll methods, part 2 — 4 February

🔬 44. Exploring the pick and the roll methods, part 1 — 3 February

🔬 43. Variable $y not declared. Did you mean $x? — 2 February

🔬 42. Mathematics in the Num data type — 1 February

🔬 41. Converting Num to Rat — 31 January

🔬 40. Substitution and balanced brackets in Perl 6 regexes — 30 January

🔬 39. Experimenting with Rats and Nums — 29 January

🔬 38. To divide or not to divide — 28 January

🔬 37. Dividing by zero — 27 January

🔬 36. Rakudo 2018.01 — 26 January

🔬 35. Statement in the Grammar — 25 January

🔬 34. Delimiters of embedded comments — 24 January

🔬 33. The cmp infix — 23 January

💡 32. It’s time for optimism — 22 January

🔬 31. The opcode dispatching loop in MoarVM — 21 January

🔬 30. How I was optimising MoarVM — 20 January

🔬 29. Exploring the Int type, part 2 — 19 January

🔬 28. Exploring the Int type, part 1 — 18 January

🔬 27. Obsolete syntax error messages, part 4 — 17 January

🔬 26. Native integers and UInt — 16 January

🔬 25. The Range method — 15 January

🔬 24. Obsolete syntax error messages, part 3 — 14 January

🔬 23. The internals of the ternary operator — 13 January

🔬 22. The infix nature of the ternary operator — 12 January

🔬 21. The =~= operator — 11 January

🔬 20. What does nqp::getattr do? — 10 January

🔬 19. Digging into @a[*-1] — 9 January

🔬 18. Implementing negative array subscripts — 8 January

🦋 17. Parameterised roles — 7 January

🔬 16. Unifying the implementation of say — 6 January

🔬 15. Variants of say — 5 January

🔬 14. Tracking down the say calls — 4 January

🔬 13. Let 1 + 2 * 3 = 9 — 3 January

🔬 12. The beginning of the Grammar — 2 January

🦋 11. Compiler stages and targets — 1 January

2017

🔬 10. Obsolete syntax error messages, part 2 — 31 December

🔬 9. Obsolete syntax error messages, part 1 — 30 December

🔬 8. Digging into operator precedence, part 2 — 29 December

🔬 7. Digging into operator precedence, part 1 — 28 December

🔬 6. The dd routine — 27 December

🔬 5. Lurking behind interpolation — 26 December

🔬 4. Exploring the Bool type, part 2 — 25 December

🔬 3. Playing with code — 24 December

🔬 2. Exploring the Bool type, part 1 — 23 December

🦋 1. The proto keyword — 22 December

About this blog