I wish that more programming languages would include detailed rationales and justifications of their features like this in their documentation. While this blog post doesn't have the rigor of something like the Ada Rationale[1], it gives a real sense of <i>why</i> something might have been designed the way it was.<p>Maybe I just enjoy reading this sort of thing. But we are so often told to choose the "best tool", or find ourselves evaluating programming languages for all sorts of reasons. Being able to understand a language in its context, the choices it made in comparison to the alternatives, can only help with that.<p>When I read the rationale for a new early-stage language Austral[2], I found myself actually able to evaluate what I thought the language might be good for, how it might evolve while under the control of the same creator, whether it fit with my personal strengths, weaknesses, methods and aesthetics, etc.<p>By contrast, I was perusing the documentation for Odin, another new language, at around the same time. While I don't want to disparage the incredible amount of work it took to a) build a programming language and ecosystem and b) document it, I found myself wishing for a similar "rationale" document so I could actually compare Odin with Austral at a more abstract level than reading syntax.<p>Odin's "overview" begins with an example of the lexical syntax of comments, rather than what the principle "Striving for orthogonality"[3] in its FAQ actually means and how it is borne out in the language as designed, compared to other approaches that could have been taken.<p>Austral, by contrast, has a great section called "the cutting room floor" where the creator discusses different approaches to resource safety, the difficult tradeoffs to be made, and why Austral decided on possibly the severest of all the approaches. This isn't <i>just</i> philosophy; it tells me something useful about the tradeoffs involved in using the language.<p>Anyway, the OP helped me to understand very clearly that Raku's priorities and values are extremely different to my own, and that it would likely be a bad choice for me to invest time in.<p>[1] <a href="http://ada-auth.org/standards/12rat/html/Rat12-TOC.html" rel="nofollow">http://ada-auth.org/standards/12rat/html/Rat12-TOC.html</a><p>[2] <a href="https://austral-lang.org/spec/spec.html" rel="nofollow">https://austral-lang.org/spec/spec.html</a><p>[3] <a href="https://odin-lang.org/docs/faq/" rel="nofollow">https://odin-lang.org/docs/faq/</a>