TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Raku programming language is more complex than it can be

2 pointsby amano-kenji9 months ago
I wrote a program in raku.<p>There are multiple ways to do one thing, and it was confusing. There are even multiple ways to call a function. I found myself constantly reading the documentation for syntax.<p>The language concepts are rather complex. Junctions are confusing.<p>You can certainly write raku more like natural language than other programming languages, but that comes at the expense of simplicity.<p>I still have to think like a computer with messy lingual complexity of a human language. A human langauge is messy with a lot of exceptions. A computer language should be simple and clean.<p>Raku felt more complex than haskell. I also wish raku didn&#x27;t have OOP because OOP is hard to reason about.<p>There are still good things about raku. Its package management is better than most others, but the language for specifying package dependencies is complex.<p>With all the complexities of raku, you still don&#x27;t get tail call optimization. Thus, I can&#x27;t really do functional programming in raku.<p>If you want a simple language, raku is not it. Use raku when only raku ecosystem offers libraries that you want to use. Otherwise, use simpler programming languages.

2 comments

melezhik9 months ago
Without concrete examples it&#x27;s hard to address your &quot;rants&quot; ) Please copy&#x2F;paste some code here so we could discuss, I myself find Raku flexible rather than difficult, though it could be difficult if one really wants it to be so, however I&#x27;d say 99% of my code shares the simplicity and clarity as any other code written, say on Python or Golang.<p>Simplicity by itself is not a virtue of programming for me, it&#x27;s simplicity WITH expressiveness what matters, for that matter Golang is extremely simple (in a sense of core language) and also extremely verbose, as it lacks some primitives that some languages have, so a programmer should reimplement the same ideas over and over again using limited language syntax (and writing a lot of boilerplate code) rather than relying on expressive syntax of a language core as this would be with Raku ...<p>HTH
librasteve9 months ago
Every paradigm (imperative, functional, unicode graphemes, regex 2.0, grammar, OO) is a tool. The more tools you have in your toolbox, the more you can pick the right tool for the job. Raku does a serious job of putting all these tools into one language. This makes them composable and Larry Wall did a great job of making it all fit together in a natural expressive way.<p>Is the result simple, no. Can you learn it as quickly as python, not really (you can stay at the surface and not use all the stuff). Is it worth the effort - absolutely! Is it fun, yep.<p>A quick example to your point.<p><pre><code> sub foo(\x) { say x } foo ‘hi’; #hi ‘hi’.&amp;foo; #hi </code></pre> So yes any sub can be called like a method if you use &amp;.