<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: 2colours</title>
    <description>The latest articles on DEV Community by 2colours (@2colours).</description>
    <link>https://dev.to/2colours</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F806844%2F2bad72d8-d793-41bb-9bbe-906da580c54e.png</url>
      <title>DEV Community: 2colours</title>
      <link>https://dev.to/2colours</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/2colours"/>
    <language>en</language>
    <item>
      <title>Blessing the diamond problem - Raku's Allomorphs are a Bad Idea</title>
      <dc:creator>2colours</dc:creator>
      <pubDate>Wed, 25 Mar 2026 15:03:41 +0000</pubDate>
      <link>https://dev.to/2colours/blessing-the-diamond-problem-rakus-allomorphs-are-a-bad-idea-1o9g</link>
      <guid>https://dev.to/2colours/blessing-the-diamond-problem-rakus-allomorphs-are-a-bad-idea-1o9g</guid>
      <description>&lt;p&gt;&lt;a href="https://rakudoweekly.blog/2026/03/23/2026-12-ich-bin-ein-berliner/#:~:text=Here%20is%20an%20example%2C%20the%20Allomorph%20type%20graph%3A" rel="noopener noreferrer"&gt;In the recent Rakudo Weekly post&lt;/a&gt;, there was an illustration of the &lt;code&gt;Allomorph&lt;/code&gt; type as an educational offtangent. This is the perfect inspiration to write a full post about the topic. &lt;strong&gt;TL;DR:&lt;/strong&gt; Allomorphs are a net negative feature that could be &lt;em&gt;easily&lt;/em&gt; and &lt;em&gt;predictably&lt;/em&gt; removed from the language (given the intent, of course).&lt;/p&gt;

&lt;p&gt;This topic has two advantages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Raku knowledge is enough to understand it; in fact, knowledge of another class-based scripting language might also be enough&lt;/li&gt;
&lt;li&gt;it's a plain high-level feature that could be implemented in user space so we won't be dealing with odd runtime considerations, just type theory and user-facing implications&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The article states &lt;a href="https://rakudoweekly.blog/2026/03/23/2026-12-ich-bin-ein-berliner/#:~:text=Allomorph%20classes%20should%20be%20considered%20a%20common%20raku%20scenario" rel="noopener noreferrer"&gt;Allomorph classes should be considered a common raku scenario&lt;/a&gt;. I agree with this statement. Let's look into the reasons and consequences!&lt;/p&gt;

&lt;h1&gt;
  
  
  Why Allomorphs exist
&lt;/h1&gt;

&lt;p&gt;This question is half sincere and half rhetoric.&lt;/p&gt;

&lt;h3&gt;
  
  
  Sincere question - a hypothesis
&lt;/h3&gt;

&lt;p&gt;First let me recommend reading about &lt;a href="https://en.wikipedia.org/wiki/Expression_problem" rel="noopener noreferrer"&gt;the expression problem&lt;/a&gt;, my rationalization is related to this broader topic.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Perl as the ancestor of Raku, is strong on having dedicated operations for different types: as an example, it has &lt;code&gt;.&lt;/code&gt; for string concatenation and &lt;code&gt;+&lt;/code&gt; for numeric addition. This approach has certain merits: it's a fairly predictable system that works well with unstructured data.&lt;/li&gt;
&lt;li&gt;Raku took this a step further: it encourages you to "bring your own operations" (to existing types), as exemplified by the ability to define new operators, and coercive type constraints. This allows for a fairly extensive (and extensible!) system of coercive operations (if you know another language that has this, please inform me).&lt;/li&gt;
&lt;li&gt;Raku is, however, also a class-based object oriented language and this framework doesn't work well with coercions - you cannot just call a method on an unrelated object and have it coerced to your class because the method won't be available for starters... a class has to proactively plan for supporting unrelated types to be able to coerce into them.&lt;/li&gt;
&lt;li&gt;Raku does take up on this OO challenge: by having very fat base classes (&lt;code&gt;Mu&lt;/code&gt;, &lt;code&gt;Any&lt;/code&gt;, &lt;code&gt;Cool&lt;/code&gt;) - in particular, &lt;code&gt;Any&lt;/code&gt; covers most of the interface of &lt;code&gt;List&lt;/code&gt; and &lt;code&gt;Cool&lt;/code&gt; covers&lt;sup id="fnref1"&gt;1&lt;/sup&gt; most of &lt;code&gt;Numeric&lt;/code&gt; and &lt;code&gt;Str&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Now, &lt;em&gt;I think&lt;/em&gt; Allomorphs were envisioned to take these "object-oriented coercions" a step further, by using actual inheritance which means full coverage of the interfaces, utilizing inherited behavior and passing type checks.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Rhetoric question (you could answer regardless!)
&lt;/h3&gt;

&lt;p&gt;... now, having said that, I don't know of a real life use-case of Allomorphs, other than being pretty much forced to deal with them ("common raku scenario"). If you have such examples, that would help estimating the costs and benefits. In my understanding, a string passing eg. an &lt;code&gt;Int&lt;/code&gt; type constraint is unnecessary when you could have a coercive constraint &lt;code&gt;Int()&lt;/code&gt; to allow for any sort of type to be coerced into &lt;code&gt;Int&lt;/code&gt;, or &lt;code&gt;Int(Str)&lt;/code&gt; to specifically allow this particular coercion.&lt;/p&gt;

&lt;p&gt;I'm confident that decent alternatives could be suggested to all existing uses to Allomorphs but the only real way to know it is to see the use-cases. I for one basically only bumped into them when they caused problems for me (spoiler: it was a &lt;code&gt;Bool&lt;/code&gt; coercion ("empty check") on a "string" obtained from &lt;code&gt;prompt&lt;/code&gt;).&lt;/p&gt;

&lt;h1&gt;
  
  
  "Red flags" of the &lt;code&gt;Allomorph&lt;/code&gt; class
&lt;/h1&gt;

&lt;p&gt;These are properties of the &lt;code&gt;Allomorph&lt;/code&gt; class that are more symptoms of an underlying issue than being issues on their own.&lt;/p&gt;

&lt;p&gt;First, it's questionable why something of the name "allomorph" is tied to &lt;code&gt;Str&lt;/code&gt; by inheriting from it - if these multi-faceted types are useful, why make one of the facets mandatorily a string?&lt;br&gt;
Second, if we look into the &lt;a href="https://github.com/rakudo/rakudo/blob/74da84b05fbc6834ffbd8ca4e642610316c78789/src/core.c/allomorphs.rakumod#L1" rel="noopener noreferrer"&gt;Rakudo implementation of the class&lt;/a&gt;, we can observe that it prepares to delegate a whole bunch of calls to &lt;code&gt;Numeric&lt;/code&gt; - so the hidden assumption is that the other type has to be some sort of &lt;code&gt;Numeric&lt;/code&gt;.&lt;br&gt;
Third, despite inheriting from &lt;code&gt;Str&lt;/code&gt;, this type has to &lt;a href="https://github.com/rakudo/rakudo/blob/74da84b05fbc6834ffbd8ca4e642610316c78789/src/core.c/allomorphs.rakumod#L90" rel="noopener noreferrer"&gt;bring its own &lt;code&gt;Str&lt;/code&gt; coercion method&lt;/a&gt; - actually, &lt;code&gt;Str($allomorph)&lt;/code&gt; and &lt;code&gt;$allomorph.Str&lt;/code&gt; don't even behave the same way. This &lt;em&gt;inconsistency&lt;/em&gt; might be an issue in itself but it's not the fault of the hard-wired &lt;code&gt;Str()&lt;/code&gt; coercion: indeed, why should something that "is a &lt;code&gt;Str&lt;/code&gt;" return anything but itself when coerced into a &lt;code&gt;Str&lt;/code&gt;? That odd feeling is probably because of...&lt;/p&gt;
&lt;h1&gt;
  
  
  The Liskov Substitution Principle
&lt;/h1&gt;

&lt;p&gt;The L in the SOLID principles, the Liskov Substitution Principle (LSP) assigns semantics to subtyping, stating that a subtype of type T must be usable instead of T without breaking the program. We will see that Allomorphs break the LSP inevitably.&lt;/p&gt;

&lt;p&gt;In a class-based type system, inheritance is a means of subtyping one can describe with the &lt;code&gt;is-a&lt;/code&gt; relation. The LSP gives semantics to this relation: if a Horse &lt;em&gt;is an&lt;/em&gt; Animal, then a Horse has to behave in our model exactly as an Animal would, fulfilling all invariants.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://rakudoweekly.blog/2026/03/23/2026-12-ich-bin-ein-berliner/#:~:text=%E2%80%9CI%20checked%20for,Consider%20this%20code%3A" rel="noopener noreferrer"&gt;The Rakudo Weekly post highlighted an obstacle&lt;/a&gt; and provided an explanation to it. I think it misses the point and it shows no awareness of the LSP. (It's worth clarifying that something "that inherits from &lt;code&gt;Int&lt;/code&gt;" &lt;em&gt;is an&lt;/em&gt; &lt;code&gt;Int&lt;/code&gt;.)&lt;br&gt;
Posting the code example here:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;class Animal {} 
class Horse is Animal {}
class Human is Animal {}
sub cantread(Animal $a) { "{$a.^name}s can't read" }
my $h = Human.new;
say cantread $h; #Humans can't read
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It's not clear whether this is meant to be a good example, and if it isn't, what does it prove or illustrate. &lt;em&gt;This code example is perfectly consistent with the LSP&lt;/em&gt; - we might find it subjectively odd that "humans can't read" but if it's an invariant of animals that they can't read, then our choice is to either a) not model humans as animals b) accept that by extension, humans also cannot read. This is a modeling question: the two commonsensical resolutions seem to be a) discard "animals cannot read" as it isn't an invariant b) don't model humans as animals.&lt;br&gt;
Anyway, the code is easy to reason about and with a more practical interface (eg. a &lt;code&gt;can-read&lt;/code&gt; method or subroutine), one could even sensibly define results for different subtypes.&lt;/p&gt;

&lt;p&gt;The problem with Allomorphs isn't the mere fact of the subtyping but, as we will see, the subtype of &lt;code&gt;Int&lt;/code&gt; that we get (&lt;code&gt;IntStr&lt;/code&gt;) is indeed not quite an &lt;code&gt;Int&lt;/code&gt; as per the LSP - &lt;em&gt;and even more notoriously, it "is a" &lt;code&gt;Str&lt;/code&gt; but doesn't behave like a `Str&lt;/em&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  The diamond problem and its incompatibility with the LSP
&lt;/h1&gt;

&lt;p&gt;There are many variants of &lt;a href="https://en.wikipedia.org/wiki/Multiple_inheritance#The_diamond_problem" rel="noopener noreferrer"&gt;the diamond problem&lt;/a&gt; even within OO - for our case, this is the important part:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If there is a method in A that B and C have overridden, and D does not override it, then which version of the method does D inherit: that of B, or that of C?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Raku is not unique in the regard that it allows users to "invent" this problem for themselves and uses the C3 algorithm to resolve these conflicts - Python does the same (Perl as well). However, Raku specifically encourages this problem by introducing it to the core language in a somewhat custom way, bringing utilities to create values like this.&lt;/p&gt;

&lt;p&gt;For simplicity's sake, I'm going to talk about &lt;code&gt;IntStr&lt;/code&gt; in particular - the conclusions apply to other allomorphic types as well.&lt;/p&gt;

&lt;p&gt;What we ignored so far is that &lt;em&gt;there is in fact an overlap between the interfaces of &lt;code&gt;Int&lt;/code&gt; and &lt;code&gt;Str&lt;/code&gt;&lt;/em&gt;, and since they &lt;em&gt;do behave differently&lt;/em&gt;, there is absolutely no way there could be a type that is simultaneously an &lt;code&gt;Int&lt;/code&gt;, a &lt;code&gt;Str&lt;/code&gt; and respects Liskov's principle. The previously mentioned Rakudo sources &lt;a href="https://github.com/rakudo/rakudo/blob/74da84b05fbc6834ffbd8ca4e642610316c78789/src/core.c/allomorphs.rakumod#L2" rel="noopener noreferrer"&gt;don't&lt;/a&gt; &lt;a href="https://github.com/rakudo/rakudo/blob/74da84b05fbc6834ffbd8ca4e642610316c78789/src/core.c/allomorphs.rakumod#L6" rel="noopener noreferrer"&gt;make it&lt;/a&gt; &lt;a href="https://github.com/rakudo/rakudo/blob/74da84b05fbc6834ffbd8ca4e642610316c78789/src/core.c/allomorphs.rakumod#L14" rel="noopener noreferrer"&gt;a secret&lt;/a&gt; where the overlaps are: the overlaps will be typically resolved&lt;sup id="fnref2"&gt;2&lt;/sup&gt; in the numeric direction.&lt;/p&gt;

&lt;p&gt;This means that you can have a &lt;code&gt;Str&lt;/code&gt; - really, something that passes all type checks, coercive or not! - that will&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://docs.raku.org/type/Str#method_Bool:~:text=Returns%20False%20if%20the%20string%20is%20empty%2C%20True%20otherwise." rel="noopener noreferrer"&gt;boolify to &lt;code&gt;False&lt;/code&gt; even though it's &lt;em&gt;not&lt;/em&gt; empty&lt;/a&gt; (&lt;code&gt;&amp;lt;0&amp;gt;.Bool&lt;/code&gt;, &lt;code&gt;&amp;lt;-00&amp;gt;.Bool&lt;/code&gt; etc. - worse yet when you have &lt;code&gt;RatStr&lt;/code&gt;, &lt;code&gt;NumStr&lt;/code&gt; or &lt;code&gt;ComplexStr&lt;/code&gt;!)&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://docs.raku.org/type/Str#method_succ" rel="noopener noreferrer"&gt;just work different altogether when iterated with &lt;code&gt;.succ&lt;/code&gt; or &lt;code&gt;.pred&lt;/code&gt;&lt;/a&gt; (&lt;code&gt;&amp;lt;-1&amp;gt;.succ&lt;/code&gt;, &lt;code&gt;&amp;lt;042&amp;gt;.succ&lt;/code&gt; - different value and length and return type)&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://docs.raku.org/type/Str#method_ACCEPTS" rel="noopener noreferrer"&gt;smartmatches against strings that don't &lt;code&gt;eq&lt;/code&gt; to it&lt;/a&gt; (&lt;code&gt;&amp;lt;1&amp;gt; ~~ &amp;lt;01&amp;gt;&lt;/code&gt; and vice versa - again, worse yet with eg. &lt;code&gt;&amp;lt;1e-1&amp;gt; ~~ &amp;lt;10e-2&amp;gt;&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It would be easy to downplay these issues&lt;sup id="fnref3"&gt;3&lt;/sup&gt; as "who would do something like that" but as I said, after a bunch of type checks, you wouldn't know where the value came from, and built-ins like &lt;a href="https://docs.raku.org/type/independent-routines#sub_prompt" rel="noopener noreferrer"&gt;prompt&lt;/a&gt; don't ask twice to give you these incompatible values.&lt;/p&gt;

&lt;p&gt;If we take the LSP a little bit more seriously, &lt;code&gt;IntStr&lt;/code&gt; isn't a proper &lt;code&gt;Int&lt;/code&gt; either: you might expect for &lt;code&gt;Int&lt;/code&gt; value &lt;code&gt;10 &amp;lt;= $x &amp;lt; 100&lt;/code&gt; to get &lt;code&gt;$x.chars == 2&lt;/code&gt; but &lt;code&gt;$x.chars&lt;/code&gt; can be any number when you have an &lt;code&gt;IntStr&lt;/code&gt; with leading zeroes&lt;sup id="fnref4"&gt;4&lt;/sup&gt;.&lt;/p&gt;

&lt;p&gt;Now we can see why Allomorphs bring their own implementations of coercion methods, forcefully upcasting them into &lt;code&gt;Str&lt;/code&gt;, &lt;code&gt;Int&lt;/code&gt;, &lt;code&gt;Real&lt;/code&gt;, and so on: this is a way - actually, the only way I know about - to &lt;em&gt;forcefully opt out of Allomorphs&lt;/em&gt; and restore the invariants of these types. You got a string? Next time, remember to either call &lt;code&gt;.Str&lt;/code&gt; on them, or take notes: you aren't supposed to boolify them, smartmatch them against each other, or step them. I'm not sure, though, if this list is exhaustive...&lt;/p&gt;

&lt;p&gt;Apropos upcasting to &lt;code&gt;Str&lt;/code&gt;. &lt;a href="https://github.com/rakudo/rakudo/commit/7a77b397918a345352dfdcd746b3949d3efbcf53" rel="noopener noreferrer"&gt;This modification&lt;/a&gt; hints that certain methods of &lt;code&gt;Str&lt;/code&gt; pay attention to be invariant (return instances of &lt;code&gt;Str&lt;/code&gt; rather than the subtype). This is not only a "red flag" (why was this necessary if Allomorphs are so great?) but also a deliberate breaking change for sure - one more to the list in my previous post.&lt;/p&gt;

&lt;h1&gt;
  
  
  Bonus one issue &lt;code&gt;&amp;lt;&amp;gt;&lt;/code&gt; doesn't even always call &lt;code&gt;val()&lt;/code&gt;
&lt;/h1&gt;

&lt;p&gt;This is a random thing I observed: while &lt;code&gt;&amp;lt;i&amp;gt;&lt;/code&gt; is a &lt;code&gt;Str&lt;/code&gt; (fair enough I suppose) and &lt;code&gt;&amp;lt;1i&amp;gt;&lt;/code&gt; is a &lt;code&gt;ComplexStr&lt;/code&gt; (the usual &lt;code&gt;val()&lt;/code&gt; scenario), for some reason, &lt;code&gt;&amp;lt;0+1i&amp;gt;&lt;/code&gt; is outright &lt;code&gt;Complex&lt;/code&gt;, unlike both &lt;code&gt;val('0+1i')&lt;/code&gt; and &lt;code&gt;qw:v&amp;lt;0+1i&amp;gt;&lt;/code&gt;, as taken from the &lt;a href="https://raku-advent.blog/2023/12/10/day-10-the-magic-of-q/#:~:text=%3C%E2%80%A6%3E%20%20%20%20%20%20Q%3Aq%3Aw%3Av/%E2%80%A6/%20%20%20%20qw%3Av/%E2%80%A6/%20%20%20%20Split%20on%20ws%2C%20do%20val()%20processing" rel="noopener noreferrer"&gt;calendar post linked in Rakudo Weekly&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This is on Ubuntu 24.04 with Rakudo 2025.12 and it seems like a mere bug. I don't know whether it's better be a bug or a feature.&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;I think there is plenty of reason to not have Allomorphs in the core language, or at least avoid them, ranging from the fact that they are trivial to implement outside of the compiler, and that you really don't want strings that don't always behave like strings scattered around in your code, coming from external sources.&lt;/p&gt;

&lt;p&gt;The conclusion highly depends on some sort of benefit or legitimate use cases of Allomorphs - if you know about those, let me know about them in the comments, and maybe we can iterate this post, or at least point out some irreconcilable difference of value judgements.&lt;/p&gt;




&lt;ol&gt;

&lt;li id="fn1"&gt;
&lt;p&gt;This in itself is not a problem as long as there are no overlaps between the interfaces (method signature clashes), although I think it could have been implemented better: instead of de facto covering interfaces, these interfaces should have been separated into some sort of mixins, possibly roles. ↩&lt;/p&gt;
&lt;/li&gt;

&lt;li id="fn2"&gt;
&lt;p&gt;I'm not sure why so much code needed to be written but the point would stand with automatic, C3-based method resolution as well. ↩&lt;/p&gt;
&lt;/li&gt;

&lt;li id="fn3"&gt;
&lt;p&gt;I'm not sure if this downplaying is probable, though: I don't see much reason to take something for granted that makes the language harder to implement, specify, document, learn. There would have to be strong positive evidence in favor of it. ↩&lt;/p&gt;
&lt;/li&gt;

&lt;li id="fn4"&gt;
&lt;p&gt;At this point you may wonder whether Allomorphs allow for alternate numeric formats from Unicode. They do, although in my experience less than the actual source code would allow. This would be another story but it does mean that there are in fact many more strings that have the same values. ↩&lt;/p&gt;
&lt;/li&gt;

&lt;/ol&gt;

</description>
      <category>typesafe</category>
      <category>rakulang</category>
      <category>liskov</category>
    </item>
    <item>
      <title>Raku community(?) in 2026 - how my permanent ban came to be</title>
      <dc:creator>2colours</dc:creator>
      <pubDate>Tue, 17 Mar 2026 06:58:28 +0000</pubDate>
      <link>https://dev.to/2colours/raku-community-in-2026-how-my-permanent-ban-came-to-be-89j</link>
      <guid>https://dev.to/2colours/raku-community-in-2026-how-my-permanent-ban-came-to-be-89j</guid>
      <description>&lt;p&gt;Or: &lt;em&gt;what matters and what doesn't.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;When I &lt;a href="https://github.com/Raku-Steering-Council/Papers/commit/9743c4b1bcdd31d784f34ab6cbec83baef7f7c64" rel="noopener noreferrer"&gt;received my second ban from the Raku community&lt;/a&gt;, just a little over a month after &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/454a94d731eb09eb8fc2165216ec9f80889a9f23/announcements/20240117.md" rel="noopener noreferrer"&gt;my first ban&lt;/a&gt;&lt;br&gt;
expired, I can't say I was terribly surprised by the fact that to a large extent the same people wished to see me out of the project in some shape or form,&lt;br&gt;
but it came to my surprise that they wouldn't settle for anything less than a permanent ban, effective immediately.  &lt;/p&gt;

&lt;p&gt;Since we aren't talking about an organisation in the legal sense, there is nothing that would make such a ban &lt;em&gt;illegal&lt;/em&gt;, and I doubt the involved parties&lt;br&gt;
would ever agree whether the decision was &lt;em&gt;just&lt;/em&gt; or not. However, I would really like to know at the very least whether the actual Raku community - as in people&lt;br&gt;
involved with Raku either as users or contributors - consider it &lt;em&gt;legitimate&lt;/em&gt; and how they feel about the supposed permanent order the Community Affairs Team&lt;br&gt;
seeks to represent.&lt;/p&gt;

&lt;p&gt;Let's see how this ban manifested, and then also the background from my perspective - after all, not being a legally recognized procedure, there is essentially&lt;br&gt;
no defense or no medium for the accused to represent themselves in any way. Given the terse announcement, there are plenty of things to interpret.&lt;/p&gt;

&lt;h1&gt;
  
  
  "What do I care?" - If there is one part you read
&lt;/h1&gt;

&lt;p&gt;I can't expect anybody to read long discussions and take sides in something that is essentially a cluster of personal conflicts. (I don't mind it if somebody does, though. :P)&lt;br&gt;&lt;br&gt;
However, &lt;strong&gt;how a procedure like this happens is the concern of the whole community&lt;/strong&gt;, and the following aspects definitely deserve attention:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;from the &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/9637c1b47d754d4249b0962e097963df3e0abf9e/papers/coc_incident_response_guide.md" rel="noopener noreferrer"&gt;CoC incident response guide&lt;/a&gt;, one
can clearly see that under the premise of "it hurts the entire community", the accused really has little to no rights and the idea really is to prevent any proper publicity or any
transparency about the decision-making process itself (&lt;em&gt;it also contains some ironic notes, like the RSC members, who are in large apparent overlap with the CAT members, should be held against even higher standards&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;the whole repository misses any details about how somebody becomes a CAT member, or what the structure even is (&lt;em&gt;I only learned it from email that apparently there is such a thing as a secretary of the CAT&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;the &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/e38ba54620489ab4be1103a3768101a0b40ad05a/papers/cat_membership.md" rel="noopener noreferrer"&gt;list of CAT members&lt;/a&gt; is &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/9743c4b1bcdd31d784f34ab6cbec83baef7f7c64/announcements/20251223.md" rel="noopener noreferrer"&gt;certainly outdated&lt;/a&gt;
(&lt;em&gt;another example of RSC members serving as CAT members which surely helps them hold themselves against the highest standards&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;the public announcement also doesn't clarify who is making the decision and based on what evidence (&lt;em&gt;in fact, the implication expressed in background conversations is that the CAT does have some sort of evidence but isn't going to disclose it in any shape or form, it seems&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;when asked by others for clarification on IRC, &lt;a class="mentioned-user" href="https://dev.to/lizmat"&gt;@lizmat&lt;/a&gt;, a member of the RSC (but to our best knowledge not the CAT) links a conversation she was deeply involved in,
&lt;a href="https://irclogs.raku.org/raku/2026-02-25.html#17:22-0001" rel="noopener noreferrer"&gt;saying "it made me realize (...)" in the explanation&lt;/a&gt;. Three red flags:

&lt;ul&gt;
&lt;li&gt;not a CAT member to have any authority over the matter&lt;/li&gt;
&lt;li&gt;a highly involved participant in the cited conversation&lt;/li&gt;
&lt;li&gt;an RSC member supposedly held against even higher standards in the conversation&lt;/li&gt;
&lt;li&gt;&lt;em&gt;an odd note: "it's all in the irc logs" is even contradictory to "the CAT has evidence that we aren't going to disclose" sentiment communicated towards me later on&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;given how entangled the RSC and the CAT are, some concerns about the RSC also apply here&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Since the resulting decision is a &lt;em&gt;permanent ban&lt;/em&gt;, one might be curious what I have done to earn it. The reason given is: &lt;code&gt;"the interactions on line are similar to those which led to his two-year ban"&lt;/code&gt;. &lt;br&gt;
More about what led to my ban later on for those who are interested - let me just say, since we are not talking about criminal activity (&lt;em&gt;I'd argue it's not clear which&lt;br&gt;
point of the Code of Conduct is even being violated&lt;/em&gt;), it sounds dishonest at the very least to ban somebody for 2 years under the expectation that their convictions have to change, &lt;br&gt;
and then almost instantly extend that ban to infinity, as if to tacitly say "if you don't come back with regret, you might as well be gone for good".&lt;/p&gt;

&lt;h1&gt;
  
  
  "A frustrated, egotistical person" - bad patterns?
&lt;/h1&gt;

&lt;p&gt;It's a reasonable assumption that somebody who has been banned twice might not be a reliable narrator of the events - in fact, it seems logical that somebody who has "hurt the community on multiple occasions" would also want to stir up some drama, as a new, creative way to cause harm, right?&lt;br&gt;&lt;br&gt;
Well, perhaps with the frustration, you would be right: I may be frustrated. However, my bad record is, to an extent, an illusion: it actually has been mostly the same people, &lt;em&gt;even stretching beyond my presence or activity in the community&lt;/em&gt;, who steered (pun not intended - not yet) conflicts in a certain direction:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;as we have seen, without knowing the exact state of the CAT, we have to assume it was mostly the same people making the decision as 2 years ago&lt;/li&gt;
&lt;li&gt;it was mostly the same two people &lt;a href="https://irclogs.raku.org/raku/2026-02-25.html#17:22-0001" rel="noopener noreferrer"&gt;explaining&lt;/a&gt; and &lt;a href="https://irclogs.raku.org/raku/2026-02-25.html#17:45" rel="noopener noreferrer"&gt;defending&lt;/a&gt; the ban (who have by the way showed &lt;a href="https://irclogs.raku.org/raku/2026-02-11.html#15:39" rel="noopener noreferrer"&gt;great&lt;/a&gt; &lt;a href="https://irclogs.raku.org/raku-dev/2026-02-14.html#17:21" rel="noopener noreferrer"&gt;conduct&lt;/a&gt; and &lt;a href="https://irclogs.raku.org/raku-dev/2026-02-14.html#14:41" rel="noopener noreferrer"&gt;not-so-subtle hints&lt;/a&gt; of a bargain scheme) who already played &lt;a href="https://irclogs.raku.org/raku-dev/2024-01-10.html#16:55" rel="noopener noreferrer"&gt;dubious role&lt;/a&gt; &lt;a href="https://irclogs.raku.org/raku/2023-02-18.html#14:45" rel="noopener noreferrer"&gt;around my former ban&lt;/a&gt; (&lt;em&gt;this latter message got cited as evidence of my misconduct - see later - by the way, coming from somebody who admitted, perhaps multiple times, to know the language less than I do&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;I had two head-on political/ideological conflicts in my "early Raku days" in 2022: one about the &lt;a href="https://irclogs.raku.org/raku/2022-02-24.html#12:02" rel="noopener noreferrer"&gt;Code of Conduct&lt;/a&gt; &lt;a href="https://github.com/Raku-Steering-Council/Papers/issues/48" rel="noopener noreferrer"&gt;itself&lt;/a&gt; (&lt;a href="https://irclogs.raku.org/raku/2022-02-24.html#15:39" rel="noopener noreferrer"&gt;fairly involved&lt;/a&gt; and &lt;a href="https://irclogs.raku.org/raku/2022-02-24.html#16:37" rel="noopener noreferrer"&gt;borderline aggressive&lt;/a&gt; messages from "leaders of the community", to borrow this phrase) and one about the whole &lt;a href="https://irclogs.raku.org/raku/2022-09-06.html#00:38" rel="noopener noreferrer"&gt;'master' vs 'main' polemy&lt;/a&gt; (&lt;em&gt;to be fair, this debate seems like one of my big mess-ups in retrospect - more about that later* - still I have no idea what @japhb (still RSC member) &lt;a href="https://irclogs.raku.org/raku/2022-09-06.html#07:27" rel="noopener noreferrer"&gt;was on about&lt;/a&gt; or &lt;a href="https://irclogs.raku.org/raku/2022-09-06.html#07:38-0001" rel="noopener noreferrer"&gt;how this kind of behavior demonstrates good leadership&lt;/a&gt;&lt;/em&gt;)
&lt;em&gt;Now, I'm not saying I eventually got banned because of this, but I do think these early and fundamental conflicts and the role of the leadership largely determined the attitude towards me.&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;and now we get back to 2020 when a certain &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/244387b7d261b0261fabec4ff4cc672579f5d821/announcements/20201030.md" rel="noopener noreferrer"&gt;member of the Raku Steering Council @AlexDaniel got removed from the Steering Council and the "core team"&lt;/a&gt;, just &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/2a4d15bb8f35c3c1c3e70746db84ccd64e08d3d9/nominations/2020/results.txt" rel="noopener noreferrer"&gt;a few months after the election&lt;/a&gt; - this might be interesting not only because of the people involved, but the general patterns/mechanisms working in this community&lt;/li&gt;
&lt;li&gt;only for completion's sake: &lt;em&gt;you may see &lt;a href="https://www.reddit.com/r/perl6/comments/9uqsxl/comment/e986r73/" rel="noopener noreferrer"&gt;some familiar names&lt;/a&gt;, or &lt;a href="https://github.com/Raku/user-experience/issues/33" rel="noopener noreferrer"&gt;why did one of the most active members leave&lt;/a&gt; shortly after releasing 6.d&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(*I promised to reflect on the 'master' vs 'main' polemy. The situation is a bit subtle.&lt;br&gt;&lt;br&gt;
I &lt;em&gt;still think&lt;/em&gt; that the name 'master' for git branches being made an issue is a very bad case of manipulating people into performing a ritual of "being a good person", and thus simultaneously unpragmatic and psychologically intrusive.&lt;br&gt;&lt;br&gt;
I &lt;em&gt;still also think&lt;/em&gt; the opinion expressed in the previous sentence should &lt;em&gt;ideally&lt;/em&gt; be accepted (tolerated, if you will) in a diverse, technical-focused community, and possibly even (re)presentable as well.&lt;br&gt;&lt;br&gt;
However, I &lt;em&gt;used to think&lt;/em&gt; that this was a hill for me to die on, and as time went by, I realized it just wasn't. In the Raku community IRC and across the core members - just like many of the FOSS spaces - this opinion is not welcome. It's a pity I guess but I can live with it.&lt;br&gt;&lt;br&gt;
And as I re-evaluated the importance of this "challenge", I realized that perhaps I shouldn't have been so combatant about it, and not roll with these implications, or outright chosen narrative, that this is a "battle to fight". It really wasn't the time, the place and the way to bring this whole topic up. I &lt;em&gt;wish&lt;/em&gt; the pushback hasn't been so aggressive, especially on Geoffrey's side - but I certainly didn't help my case by completely lashing out at a behavior or mindset that many of these people held dearly or were empathetic towards.&lt;br&gt;&lt;br&gt;
On the other hand, one thing to keep in mind is that we were only 3 weeks after my first ever Raku (online) Conference - I felt very much like an insider or comrade, a respected member of the community and as such, never anticipated this much frustration or outright anger about a rather abstract matter.)&lt;/p&gt;

&lt;h3&gt;
  
  
  The first RSC ejection
&lt;/h3&gt;

&lt;p&gt;It's best to start with the context and a disclaimer in particular: @AlexDaniel has no personal role in any part in this compilation or report, I am fully responsible for it. We are on decent talking terms I would say, mostly because back in 2023 I reached out to him to learn about his story, personal opinions about Raku, whether he would ever be interested in the language again, and so on. I'm using &lt;em&gt;no information&lt;/em&gt; from personal conversations with him, and I didn't even consult him about this writing because it's neither his duty, nor his business really, to be summoned in an uncomfortable situation like this, and it's not about him &lt;em&gt;personally&lt;/em&gt; at all. My point is simply that it was a bizarre methodical removal of him from the community and it shares important similarities (including people involved) with my ban.&lt;br&gt;&lt;br&gt;
It's also worth mentioning that we actually disagree about a lot and are quite unlike each other in many ways. Alex was a highly influential member who had big ambitions for the Raku language and wanted to radically reform it - I on the other hand just got side-tracked as an over-excited user and started doing chores by myself, as much as a somewhat outsider member could, and really just wanted to see order and internal consistency, or at the very least some sort of convergence towards &lt;em&gt;something&lt;/em&gt;, as a project. Alex had a very direct, explicit communicational style - I'd like to think that I never used that sort of language and I for one certainly don't find it appealing. Having said that, in our personal conversations we never upset each other too much and could respectfully disagree about things, which in itself contradicts much of the narrative promulgated by the de facto leadership...&lt;/p&gt;

&lt;p&gt;His &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/244387b7d261b0261fabec4ff4cc672579f5d821/announcements/20201030.md" rel="noopener noreferrer"&gt;ejection announcement&lt;/a&gt; also doesn't contain a lot of substance, it could be summarized as "he has done a lot of good but dissatisfied with the project, he has become a liability in the long run" (&lt;em&gt;one might ponder who runs the project, or who &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/2a4d15bb8f35c3c1c3e70746db84ccd64e08d3d9/nominations/2020/results.txt" rel="noopener noreferrer"&gt;voted him in&lt;/a&gt; so easily with &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/a8ff13833303aefb63946d4ac151b777655b93fe/nominations/2020/AlexDaniel.md" rel="noopener noreferrer"&gt;this nomination&lt;/a&gt;&lt;/em&gt;). The only thing that strikes me as seriously manipulative is this &lt;a class="mentioned-user" href="https://dev.to/lizmat"&gt;@lizmat&lt;/a&gt;'s self-eviction proposal: this is something nobody proposed and the mere implication that somebody can have all earned permissions revoked essentially "just because" is harmful in itself. In reality, it's a bargain at plain sight and probably her &lt;a href="https://github.com/Raku/user-experience/issues/33#:~:text=If%20the%20project%20would%20benefit%20from%20my%20absence%2C%20and%20this%20is%20asked%20of%20me%2C%20then%20I%20will%20leave%20and%20wish%20you%20all%20the%20best.%20Sometimes%20you%20have%20to%20leave%20the%20thing%20you%20love%20alone%20so%20it%20can%20thrive%20on%20its%20own." rel="noopener noreferrer"&gt;most explicit&lt;/a&gt; &lt;a href="https://github.com/Raku/problem-solving/issues/200#issuecomment-633959225" rel="noopener noreferrer"&gt;hint to&lt;/a&gt; &lt;a href="https://irclogs.raku.org/raku-dev/2026-02-14.html#14:42" rel="noopener noreferrer"&gt;just leave&lt;/a&gt; that I have come across.&lt;br&gt;&lt;br&gt;
Things only get more concerning &lt;a href="https://github.com/Raku/problem-solving/issues/238" rel="noopener noreferrer"&gt;in this - ironically, problem solving - issue&lt;/a&gt;, the &lt;a href="https://colabti.org/irclogger/irclogger_log/raku-dev?date=2020-10-13#l162" rel="noopener noreferrer"&gt;linked discussion&lt;/a&gt; is also interesting, in particular because it does very minimal and voluntaristic effort to reconcile &lt;a href="https://6guts.wordpress.com/2020/10/05/taking-a-break-from-raku-core-development/#:~:text=Alas%2C%20I%E2%80%99ve%20today,also%20be%20longer." rel="noopener noreferrer"&gt;Jonathan Worthington's announcement&lt;/a&gt; with the narrative. I wouldn't want to accuse Jonathan of saying one thing to the public and another in private - &lt;a href="https://github.com/Raku/problem-solving/issues/238#:~:text=In%20a%20private%20mail%20to%20the%20RSC%20members%20(including%20AlexDaniel)%20he%20has%20made%20that%20clear.%20Yet%20that%20hasn%27t%20made%20AlexDaniel%20even%20consider%20that%20he%20may%20be%20doing%20more%20harm%20than%20good." rel="noopener noreferrer"&gt;or should I?&lt;/a&gt; Oh well. Curiously, my &lt;a href="https://irclogs.raku.org/raku-dev/2024-01-10.html#16:39" rel="noopener noreferrer"&gt;famous last words&lt;/a&gt; also came to be criticism of him...&lt;/p&gt;

&lt;p&gt;(&lt;em&gt;A longer intermezzo: I can't help it - a lot of people have good memories of the days when Jonathan Worthington was still around but the picture that I got wasn't so rosy: not only because of the &lt;a href="https://github.com/Raku-Steering-Council/Papers/issues/3#issuecomment-699693969" rel="noopener noreferrer"&gt;tantrum&lt;/a&gt; given as context for his leaving, or his &lt;a href="https://github.com/raku-community-modules/Test-Mock/issues/20" rel="noopener noreferrer"&gt;helpful&lt;/a&gt; &lt;a href="https://github.com/raku-community-modules/OO-Monitors/issues/20#issuecomment-1738198185" rel="noopener noreferrer"&gt;attitude&lt;/a&gt; - immediate block to me for that comment, by the way - to the person creating Rakudo Star releases, or his &lt;a href="https://6guts.wordpress.com/2023/06/18/recollections-from-the-raku-core-summit/#:~:text=The%20area%20I%20was%20especially%20keen%20to%20help%20with%20is%20RakuAST%2C%20something%20I%20started%2C%20and%20that%20I%E2%80%99m%20glad%20I%20managed%20to%20bring%20far%20enough%20that%20others%20could%20see%20the%20potential%20and%20were%20excited%20enough%20to%20pick%20it%20up%20and%20run%20with%20it" rel="noopener noreferrer"&gt;super casual attitude&lt;/a&gt; to the work that left everyone without a language release even 5 years after Liz first predicted the new release - but also because he had the rare luxury to &lt;a href="https://news.perlfoundation.org/post/wenzperl_donate_10000_eur_to_n" rel="noopener noreferrer"&gt;be financially&lt;/a&gt; (&lt;a class="mentioned-user" href="https://dev.to/lizmat"&gt;@lizmat&lt;/a&gt; paid) &lt;a href="http://edumentab.github.io/rakudo-and-nqp-internals-course/slides-day1.pdf" rel="noopener noreferrer"&gt;invested&lt;/a&gt; (&lt;a class="mentioned-user" href="https://dev.to/lizmat"&gt;@lizmat&lt;/a&gt; paid again) &lt;a href="https://conf.raku.org/comma" rel="noopener noreferrer"&gt;in the language&lt;/a&gt; and &lt;a href="https://raku-advent.blog/2024/12/25/day-25-raku-2024-review/" rel="noopener noreferrer"&gt;has since simultaneously divested from Raku and left it&lt;/a&gt;, never having done anything resembling a project handover. You are free to choose your Personal Jesus but maybe don't put all your money on a project lead like that.&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;These &lt;a href="https://github.com/Raku/problem-solving/issues/238#:~:text=But%20then%20again%2C%20he%20didn%27t%20think%20the%20RSC%20was%20worth%20having%2C%20yet%20he%20wanted%20to%20be%20on%20it." rel="noopener noreferrer"&gt;"what exactly follows from that"&lt;/a&gt; remarks will return at my first ban. The "you state your opinions as facts" is a &lt;a href="https://github.com/Raku-Steering-Council/Papers/issues/3#issuecomment-699533284:~:text=to%20design%20mistakes-,Again%2C%20you%20could%20have%20said%20this%20like%3A%20%22Any%20time%20I%20bring%20attention%20to%20issues%20that%20I%20think%20are%20design%20mistakes%22.%20You%20could%20consider%20some%20feature%20a%20design%20mistake%2C%20but%20others%20may%20not%20share%20that%20opinion.%20Whether%20something%20is%20a%20design%20mistake%2C%20is%20an%20opinion%2C%20NOT%20a%20fact%2C%20like%20you%20appear%20to%20be%20implying.,-it%20is%20greeted" rel="noopener noreferrer"&gt;weirdly&lt;/a&gt; &lt;a href="https://github.com/Raku/problem-solving/issues/238#:~:text=a%20destructive%20style%20of%20discussion%20where%20you%20state%20opinions%20as%20facts%20and%20ignore%20opposing%20views" rel="noopener noreferrer"&gt;popular&lt;/a&gt; sentiment that I'm &lt;a href="https://irclogs.raku.org/raku/2023-01-08.html#11:37-0002" rel="noopener noreferrer"&gt;quite&lt;/a&gt; &lt;a href="https://irclogs.raku.org/raku/2023-11-09.html#12:21-0001" rel="noopener noreferrer"&gt;familiar with&lt;/a&gt; (it came up a bunch of times at other places as well, even in the last couple of weeks). This is actually a relativizing false dichotomy that keeps people from evaluating claims because observations and analysis of them are lumped together with personal preference and gut feelings.&lt;br&gt;&lt;br&gt;
The &lt;a href="https://github.com/Raku-Steering-Council/Papers/issues/3#issuecomment-699533284:~:text=(more).-,You%27re%20trying%20very%20hard%20to%20find%20edge%20cases.,-Not%20trying%20hard" rel="noopener noreferrer"&gt;"trying hard to break things"&lt;/a&gt; sentiment goes way beyond either of us in a community where DIHWIDT is an established abbreviation to essentially mean &lt;a href="https://irclogs.raku.org/raku/2023-09-17.html#20:32" rel="noopener noreferrer"&gt;"you weren't supposed to write this code"&lt;/a&gt;, like it's always this easy. (&lt;em&gt;In general, something that is actually hard to illustrate by examples, is that there is a tendency to focus on examples without seeing the patterns - maybe &lt;a href="https://github.com/rakudo/rakudo/pull/3849" rel="noopener noreferrer"&gt;this PR&lt;/a&gt; could or &lt;a href="https://github.com/Raku/problem-solving/issues/391" rel="noopener noreferrer"&gt;this design issue&lt;/a&gt;. Interestingly, &lt;a href="https://github.com/Raku/problem-solving/issues/391#issuecomment-1782376320" rel="noopener noreferrer"&gt;@niner could relate the issue&lt;/a&gt; to existing principles and got upvoted by people who were more hooked up in the world of DWIM's and DIHWIDT's.&lt;/em&gt;)&lt;br&gt;&lt;br&gt;
The &lt;a href="https://github.com/rakudo/rakudo/pull/3849#:~:text=Finally%3A%20you%20appear%20angry%20most%20of%20the%20time.%20I%20assume%20there%27s%20at%20least%20something%20going%20on%20in%20your%20life%20that%20makes%20you%20thoroughly%20unhappy.%20Please%20don%27t%20project%20that%20unhappiness%20onto%20the%20Raku%20community." rel="noopener noreferrer"&gt;personal remark about importing frustrations&lt;/a&gt; also &lt;a href="https://irclogs.raku.org/raku-dev/2024-01-10.html#16:54-0001" rel="noopener noreferrer"&gt;seem to have a set place&lt;/a&gt; in these debates, even though one could argue that it must be much more frustrating to be stuck in a project that you believe to have only &lt;a href="https://irclogs.raku.org/raku-dev/2020-07-08.html#20:09" rel="noopener noreferrer"&gt;external problems (basically just funding)&lt;/a&gt; that don't seem to be getting better, then to think of a way forward.&lt;/p&gt;

&lt;p&gt;Something that resonates with me a lot is that whenever something comes up that needs intent and a decision, the triangle of &lt;a href="https://irclogs.raku.org/raku-dev/2020-07-08.html#19:17-0003" rel="noopener noreferrer"&gt;"we just don't want this"/"this doesn't belong here"&lt;/a&gt; (also &lt;a href="https://irclogs.raku.org/raku-dev/2020-07-08.html#21:35" rel="noopener noreferrer"&gt;here&lt;/a&gt;) — &lt;a href="https://irclogs.raku.org/raku-dev/2020-07-08.html#19:05-0001" rel="noopener noreferrer"&gt;"do it yourself, prove it"&lt;/a&gt; — &lt;a href="https://irclogs.raku.org/raku-dev/2020-07-08.html#19:52-0001" rel="noopener noreferrer"&gt;"why don't you just fork the whole thing and do whatever"&lt;/a&gt; comes up, which is a very contradictory stance and usually has the same commonsensical answers: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;proposals and suggestions are turned down without giving much thought to them or evaluating interest/risks/benefits (&lt;em&gt;"this is sealioning" is the response I hear in my head&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;why feel encouraged to implement or research an already-turned-down suggestion (&lt;em&gt;in my opinion, this is what should be considered sealioning: asking you to keep yourself busy for a while with something already turned down&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;forking Raku is tremendous unprecedented work that is certainly not for a single person; the suggestion is either dishonest or expresses doubts about the self-image of the leadership of Raku&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here is one of my last conversations - it went through the very same cycles: &lt;a href="https://irclogs.raku.org/raku-dev/2026-02-14.html#00:23" rel="noopener noreferrer"&gt;"don't agree about&lt;/a&gt; &lt;a href="https://irclogs.raku.org/raku-dev/2026-02-14.html#00:02" rel="noopener noreferrer"&gt;the premise"&lt;/a&gt;, &lt;a href="https://irclogs.raku.org/raku-dev/2026-02-14.html#00:27-0001" rel="noopener noreferrer"&gt;"go ahead and implement it regardless"&lt;/a&gt;, &lt;a href="https://irclogs.raku.org/raku-dev/2026-02-14.html#00:35-0001" rel="noopener noreferrer"&gt;"nevermind, just fork the language instead"&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I think all this demonstrates that the deflective mentality that reframes internal criticism as the "toxic influence" of whoever makes them (&lt;em&gt;or is there a good example of how to actually have impactful yet "nice" criticism?&lt;/em&gt;), and resolves the supposed personal conflicts one-sidedly, not shying away from blackmail-ish remarks - and this mentality typically even comes from the same people. &lt;a href="https://github.com/Raku-Steering-Council/Papers/issues/17#:~:text=in%20the%20Community.-,To%20be%20frank%2C%20a%20community%20that%20has%20reached%20the%20extremes%20of%20expelling%20members%20from%20the%20governing%20board%20has%20ALREADY%20failed.%20People%20are%20spending%20more%20time%20doing%20partisan%20politics%20and%20persuading%20voters%20to%20go%20with%20them%20than%20they%20are%20on%20developing%20the%20language%20and%20writing%20fabululous%20software.,-It%20is%20far" rel="noopener noreferrer"&gt;Food for thought from an eventual RSC member&lt;/a&gt;: it only took 3 months.&lt;/p&gt;

&lt;h1&gt;
  
  
  My first ban
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/454a94d731eb09eb8fc2165216ec9f80889a9f23/announcements/20240117.md" rel="noopener noreferrer"&gt;As announced here.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One can see the announcement is much more like what you would expect for something serious. Let's dig into it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;whatever other accounts or identities he creates&lt;/code&gt; seems bad faith but to be fair, it is precise&lt;/li&gt;
&lt;li&gt;stating a violation of the Code of Conduct but &lt;strong&gt;it's still not clear what exact point of the Code of Conduct has been violated&lt;/strong&gt; (&lt;em&gt;to my knowledge,
there was no CoC during the time of @AlexDaniel's ejection but it doesn't seem to make a big difference, if not for the fact that he wasn't formally excommunicated as a mere member of the community&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;it's not clear what &lt;a href="https://github.com/Raku-Steering-Council/Papers/issues/57" rel="noopener noreferrer"&gt;the remark about my "immediate" formal issue&lt;/a&gt; is meant to demonstrate
(&lt;em&gt;it's a recurring point that these people "listen to me" and "give me chances", just by happenstance disagree about everything&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;the length of the ban is largely in the eye of the beholder - on this rare occasion, &lt;a href="https://irclogs.raku.org/raku/2024-01-18.html#16:33" rel="noopener noreferrer"&gt;there was one remark&lt;/a&gt;
expressing concerns (&lt;em&gt;anyway, I find it a bit funny to say that my contributions have been taken into account at the decision&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;if the decision was based solely on IRC logs (which seems to be the case), one may wonder why the solution was a global ban
that made it impossible for me to continue with my - supposedly welcome - other contributions. Was this a punishment - in contradiction to the CoC response guide - or what was the concern about my other activity that it need to be shut down?&lt;/li&gt;
&lt;li&gt;it doesn't seem to follow from anything that the same actions can be used to justify a permanent extension of the ban&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;CAT members noted that these are not the only interactions they have noted over time&lt;/code&gt; is barely better than hearsay&lt;/li&gt;
&lt;li&gt;various funny things in the citations ranging from &lt;a href="https://irclogs.raku.org/raku/2023-07-27.html#11:11-0003" rel="noopener noreferrer"&gt;plain misinterpretation&lt;/a&gt; to &lt;a href="https://irclogs.raku.org/raku/2023-10-21.html#18:07" rel="noopener noreferrer"&gt;what others&lt;/a&gt; &lt;a href="https://irclogs.raku.org/raku/2023-02-18.html#14:45" rel="noopener noreferrer"&gt;state about me&lt;/a&gt; and this
&lt;a href="https://irclogs.raku.org/raku/2024-01-06.html#21:22" rel="noopener noreferrer"&gt;mind-breaking claim&lt;/a&gt; that somebody "left the community" by sending a &lt;code&gt;/me&lt;/code&gt; IRC command.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;There was a lot of tension on IRC&lt;/em&gt;, and most of it indeed involved me. Three things in my defense:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;First and foremost: when I came back, &lt;strong&gt;I made the effort to tone down a lot&lt;/strong&gt;, and stayed much more careful on my end, which might be the reason &lt;a href="https://irclogs.raku.org/raku/2026-02-25.html#17:22-0001" rel="noopener noreferrer"&gt;the best (only) explanation&lt;/a&gt; cites an argument where the &lt;em&gt;same person&lt;/em&gt; was trying to mischaracterize and discredit my complaint and there was a &lt;a href="https://irclogs.raku.org/raku/2026-02-11.html#15:39" rel="noopener noreferrer"&gt;borderline hysterical remark&lt;/a&gt; from somebody who, after admitting several times to know Raku less than I do, &lt;a href="https://irclogs.raku.org/raku/2023-02-18.html#14:47" rel="noopener noreferrer"&gt;had objectively estimated&lt;/a&gt; that I had been 30% right...&lt;/li&gt;
&lt;li&gt;I was - by far - the most vocal member during my stay: I totalled (to the date of my ban) 25 555 messages on Discord, most of which happened before my first ban, and most of which was bridged to IRC. (I'm not counting IRC separately now.) Of course this doesn't explain conflicts per se but it does put them into perspective: it was really hard for any conflict to happen without my involvement when I was just basically involved in everything, good things and bad things alike.&lt;/li&gt;
&lt;li&gt;most of my conflicts have been with people close to the heart of the project: RSC members, CAT members and Steve Roe (@p6steve and later &lt;a class="mentioned-user" href="https://dev.to/librasteve"&gt;@librasteve&lt;/a&gt; - current author of raku.org and the Rakudo weeklies, and with an unexplained &lt;a href="https://github.com/Raku-Steering-Council/Papers/issues/48" rel="noopener noreferrer"&gt;permission to close RSC issues&lt;/a&gt;). The overlap with the people who ejected @AlexDaniel (including the ones that agitated for it) seems considerable - anyway, it's not a surprise that the people who have the power and responsibility to change the trajectory of the project, would be involved in conflicts sparking from technical debates.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Regardless of the (in my opinion, not particularly convincing) IRC logs cited, &lt;strong&gt;I admit that a lot of times I was harsh, insensitive/borderline provocative or simply impatient&lt;/strong&gt;. (In particular, a recurring pattern is that I often engaged combating a perceived unfairness or passive-aggressive tone in a clearly frustrated manner, and only clarifying my position later on.) However, I do believe that I have been fair pretty much always, and you won't find me running around dragging people into unsolicited discussions (people &lt;em&gt;feeling like&lt;/em&gt; chiming in is not dragging them in), calling them names, or harassing them in any other way. In the case of &lt;a href="https://irclogs.raku.org/raku/2023-10-18.html#21:15-0001" rel="noopener noreferrer"&gt;melezhik&lt;/a&gt;, for example, I think we both had responsibility in stirring the frustration up but &lt;a href="https://irclogs.raku.org/raku/2023-11-09.html#19:54" rel="noopener noreferrer"&gt;there were no grudges&lt;/a&gt; and he was certainly among the people who welcomed me at my return. Bartolin wasn't a regular on IRC but from all we can tell, the interaction carried on to DMs in a respectful manner (unfortunately I don't keep IRC logs and don't remember the conversation). By the way, Bartolin is somebody &lt;a href="https://irclogs.raku.org/raku/2023-02-05.html#18:52-0001" rel="noopener noreferrer"&gt;who had sided with me earlier&lt;/a&gt; in a discussion where two &lt;a href="https://irclogs.raku.org/raku/2023-02-05.html#17:31-0002" rel="noopener noreferrer"&gt;RSC members'&lt;/a&gt; &lt;a href="https://irclogs.raku.org/raku/2023-02-05.html#18:09" rel="noopener noreferrer"&gt;main contribution&lt;/a&gt; was &lt;a href="https://irclogs.raku.org/raku/2023-02-05.html#17:48-0002" rel="noopener noreferrer"&gt;persistent discrediting&lt;/a&gt; in &lt;a href="https://irclogs.raku.org/raku/2023-02-05.html#17:34-0001" rel="noopener noreferrer"&gt;dubious ways&lt;/a&gt; (this one is even dishonest to just make a point about it). (By the way, this really highlights the perpetual "everything is just an opinion and yours is not worth a lot" mindset of these people, not at all concerned with the pragmatics of the situation but allocating lots of unsolicited resources for humbling the one who brings criticism.)&lt;br&gt;&lt;br&gt;
Other great interactions with RSC members include &lt;a href="https://irclogs.raku.org/raku-dev/2023-10-23.html#22:15" rel="noopener noreferrer"&gt;this&lt;/a&gt; and &lt;a href="https://irclogs.raku.org/raku/2023-01-08.html#13:30" rel="noopener noreferrer"&gt;this&lt;/a&gt; (the irony of talking about "this has worked for decades for Perl" in a passive aggressive tone, &lt;a href="https://irclogs.raku.org/raku/2023-01-08.html#11:04" rel="noopener noreferrer"&gt;ignoring arguments&lt;/a&gt;, when there are &lt;a href="https://irclogs.raku.org/raku/2023-01-08.html#15:13" rel="noopener noreferrer"&gt;acknowledged issues of actual dependency manager implementors&lt;/a&gt; and the &lt;a href="https://irclogs.raku.org/raku/2023-01-08.html#00:45" rel="noopener noreferrer"&gt;very discussion sparking from an actual problem&lt;/a&gt;.) @ugexe in particular is an RSC member who &lt;a href="https://colabti.org/ircloggy/perl6/2018-10-08#l19" rel="noopener noreferrer"&gt;hasn't&lt;/a&gt; &lt;a href="https://colabti.org/ircloggy/perl6/2018-10-08#l40" rel="noopener noreferrer"&gt;had&lt;/a&gt; &lt;a href="https://github.com/Raku/problem-solving/issues/131" rel="noopener noreferrer"&gt;the best track record&lt;/a&gt; with the kind of &lt;a href="https://irclogs.raku.org/raku/2023-02-07.html#12:50" rel="noopener noreferrer"&gt;passive-aggressive&lt;/a&gt; &lt;a href="https://irclogs.raku.org/raku/2023-02-13.html#23:25-0001" rel="noopener noreferrer"&gt;remarks&lt;/a&gt; &lt;a href="https://irclogs.raku.org/raku/2023-02-15.html#21:13" rel="noopener noreferrer"&gt;that somehow don't bother anybody&lt;/a&gt;. (&lt;em&gt;For what it's worth: no, neither the article dump, nor the added code snippet actually addressed the problem that installed modules cannot really be moved around, and the so-called CURFS suffers from both lack of pre-compilability and degrading performance when used in a larger folder.&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;&lt;a class="mentioned-user" href="https://dev.to/tonyo"&gt;@tonyo&lt;/a&gt;'s overall behavior is &lt;a href="https://irclogs.raku.org/raku/2022-09-06.html#18:55" rel="noopener noreferrer"&gt;below worth commenting on&lt;/a&gt;. When I'm the problem with &lt;a href="https://irclogs.raku.org/raku/2023-02-16.html#18:11" rel="noopener noreferrer"&gt;this sort of arrogant tone present&lt;/a&gt;, maybe it's not hard to feel like stuck in a corner. (Seems like he didn't start with me either: &lt;a href="https://github.com/Raku/user-experience/issues/33#issuecomment-436734823" rel="noopener noreferrer"&gt;lots&lt;/a&gt; &lt;a href="https://colabti.org/ircloggy/perl6/2018-11-05#l1581" rel="noopener noreferrer"&gt;of&lt;/a&gt; &lt;a href="https://irclogs.raku.org/perl6/2018-11-06.html#01:12-0001" rel="noopener noreferrer"&gt;big words&lt;/a&gt; for a supposed bystander in the Zoffix witch hunt.) Anyway, maybe it's not the best leadership to boast with not giving your users and potential contributors your time (quite a regular sentiment but I did bump into it &lt;a href="https://irclogs.raku.org/raku-dev/2023-01-27.html#10:24-0001" rel="noopener noreferrer"&gt;here&lt;/a&gt;, for example), and at the same time regularly demand contributions. Anyway, if somebody cares that much - after a discussion that didn't get referenced at my second ban at all, &lt;a href="https://gist.github.com/patrickbkr/f5fd88ee663dee8323a316cad5f6fe04?permalink_comment_id=5992695#gistcomment-5992695" rel="noopener noreferrer"&gt;I wrote quite a lot about my contributions and how a lot of it goes wasted&lt;/a&gt; already.&lt;/p&gt;

&lt;p&gt;Anyway, I admit that diplomacy is not my strong suit and one can definitely find conflicts where 20 passive aggressive messages go back and forth before returning to the technical subject. I regret not handling them better, I'm not proud of them. What I can neither find nor recall is any case in which the people who have "warned me and given me chances" a lot of times would acknowledge or validate my perspective in any meaningful way. Anything that doesn't immediately excuse the other participant some way, or doesn't outright presuppose that since I was involved, it could only be my fault. (One of the best examples is &lt;a href="https://irclogs.raku.org/raku-beginner/2023-04-20.html#10:44" rel="noopener noreferrer"&gt;this conversation-let&lt;/a&gt; that ended &lt;a href="https://irclogs.raku.org/raku-beginner/2023-04-20.html#13:59" rel="noopener noreferrer"&gt;in this troll lashing out against the whole (FOSS?) community&lt;/a&gt; and lowkey declaring war on humanity in a long tirade. End result: the Discord side ousted from #raku-beginner, and another one of the few occasions &lt;a href="https://irclogs.raku.org/raku-beginner/2023-04-21.html#01:31" rel="noopener noreferrer"&gt;with visible third-party backlash&lt;/a&gt; and &lt;a href="https://irclogs.raku.org/raku-beginner/2023-04-22.html#15:58" rel="noopener noreferrer"&gt;reverting the ban&lt;/a&gt;.) &lt;a href="https://github.com/Raku-Steering-Council/Papers/issues/57#issuecomment-1886128063" rel="noopener noreferrer"&gt;These messages&lt;/a&gt; &lt;a href="https://github.com/Raku-Steering-Council/Papers/issues/57#issuecomment-1886761358" rel="noopener noreferrer"&gt;outline&lt;/a&gt; the same attitude: "we had a meeting", "you were heard" - too bad that apparently all my points got disregarded both in the meeting and the given thread. The essence of the complaint (that somebody uses moderational powers for their own benefit &lt;em&gt;while&lt;/em&gt; simultaneously making bigger violations of conduct) barely gets a "yes, but..." remark immediately &lt;em&gt;steering&lt;/em&gt; the conversation towards "the merits have to be compared" and that "the ban seems alright, nobody vetoed".&lt;br&gt;&lt;br&gt;
(&lt;em&gt;I can't help but point out Richard Hainsworth: I have no reason to assume he wouldn't act in good faith but all my "affair related" interactions with him seem to have been very polite ways of him to disregard/disapprove my point of view just as much as the others did in often much less polite ways. The "extrapolation from one example" seems particularly ironic - I truly hope it doesn't seem like I extrapolated from a few examples here, and also, it would be one of my main technical criticism of the maintainers is that they are obsessed with handling issues on a case-by-case basis and refusing to see patterns. The mere fact that the language is "specified" by a bunch of tests written in Raku and you are supposed to extrapolate from them, is just the most extreme example of that.&lt;/em&gt;)&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;a id="the_rsc_situation"&gt;The RSC&lt;/a&gt;
&lt;/h1&gt;

&lt;p&gt;To come in a full circle, I think now there is nothing else left than to talk about another important aspect of the story: where the community is headed and how it's run. (Reading the whole &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/a621f24a862c3204e8b880f81545945821c51230/papers/Raku_Steering_Council_Code.md" rel="noopener noreferrer"&gt;code of governance&lt;/a&gt;  is recommended.) A few takeaways:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/a621f24a862c3204e8b880f81545945821c51230/papers/Raku_Steering_Council_Code.md#term:~:text=The%20Steering%20Council%20should%20look%20for%20ways%20to%20use%20these%20powers%20as%20little%20as%20possible." rel="noopener noreferrer"&gt;minimal&lt;/a&gt; &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/a621f24a862c3204e8b880f81545945821c51230/papers/Raku_Steering_Council_Code.md#term:~:text=The%20goal%20is%20Minimum%20Viable%20Governance." rel="noopener noreferrer"&gt;governance&lt;/a&gt; was an explicit goal - also expressed &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/main/announcements/20200720.md#:~:text=The%20activities%20of%20the%20Raku%20Steering%20Council%20should%20be%20as%20little%20as%20possible%2C%20so%20therefore%20being%20a%20council%20member%20should%20not%20take%20up%20a%20lot%20of%20time." rel="noopener noreferrer"&gt;in the first election announcement&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;the RSC &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/a621f24a862c3204e8b880f81545945821c51230/papers/Raku_Steering_Council_Code.md#term:~:text=Enforce%20or%20update%20the%20project%27s%20code%20of%20conduct" rel="noopener noreferrer"&gt;does have the formal power to enforce or update the Code of Conduct&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;a &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/a621f24a862c3204e8b880f81545945821c51230/papers/Raku_Steering_Council_Code.md#term:~:text=Whenever%20possible%2C%20the%20council%27s%20deliberations%20and%20votes%20shall%20be%20held%20in%20public." rel="noopener noreferrer"&gt;fairly transparent&lt;/a&gt; decision process was envisioned&lt;/li&gt;
&lt;li&gt;The Steering Council is, among other things &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/a621f24a862c3204e8b880f81545945821c51230/papers/Raku_Steering_Council_Code.md#term:~:text=Maintain%20the%20quality%20and%20stability%20of%20the%20Raku%20language%2C%20its%20compilers%20and%20its%20ecosystem" rel="noopener noreferrer"&gt;dedicated to the stability of the language and tooling around&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;the mandates &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/a621f24a862c3204e8b880f81545945821c51230/papers/Raku_Steering_Council_Code.md#term:~:text=A%20new%20Steering%20Council%20is%20elected%20after%20each%20language%20level%20release." rel="noopener noreferrer"&gt;last until the next language version, with no term limits&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;during the term, &lt;a href="https://github.com/Raku-Steering-Council/Papers/blob/a621f24a862c3204e8b880f81545945821c51230/papers/Raku_Steering_Council_Code.md#term:~:text=Whenever%20there%20is%20a%20vacancy%20during%20the%20regular%20council%20term%2C%20the%20council%20may%20vote%20to%20appoint%20a%20replacement%20to%20serve%20out%20the%20rest%20of%20the%20term." rel="noopener noreferrer"&gt;the main way of replacing RSC members is an internal RSC vote&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;First let me address the stability question, especially since there is &lt;a href="https://github.com/Raku/problem-solving/issues/365#issuecomment-1422941669" rel="noopener noreferrer"&gt;such strong&lt;/a&gt; &lt;a href="https://github.com/Raku/problem-solving/issues/253#issuecomment-751503977" rel="noopener noreferrer"&gt;confidence and dedication&lt;/a&gt; expressed. I will skip over the &lt;a href="https://github.com/Raku/problem-solving/issues/381" rel="noopener noreferrer"&gt;theoretical problems&lt;/a&gt; and just bring examples of actual visible breakage in Rakudo, not tied to any language version - mind you, most examples won't exactly be bugs in the classic sense, more like reinterpretations of what was "meant to happen".&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a &lt;a href="https://github.com/rakudo/rakudo/issues/1705#issuecomment-2122279730" rel="noopener noreferrer"&gt;design discussion unfolded&lt;/a&gt; under an old issue, concluding that the original idea was wrong. Honestly, this is an almost pathological example of things that shouldn't happen:

&lt;ul&gt;
&lt;li&gt;design discussion under a random bug report&lt;/li&gt;
&lt;li&gt;ruminations about what the spec tests are supposed to ensure, leading to a Roast change&lt;/li&gt;
&lt;li&gt;no version gating&lt;/li&gt;
&lt;li&gt;with &lt;a href="https://github.com/rakudo/rakudo/commit/b2198d9e188367227357fa541d6d82afb2a330ab" rel="noopener noreferrer"&gt;the best intentions&lt;/a&gt;, this still broke the &lt;code&gt;[»+«] [[5, 6, 7],]&lt;/code&gt; case, &lt;a href="https://github.com/rakudo/rakudo/issues/5951" rel="noopener noreferrer"&gt;as pointed out here&lt;/a&gt; (&lt;em&gt;as explained in the issue: I think the principle of the new behavior is simply wrong for the hyper case - the 0/1-arg case of &lt;code&gt;&amp;gt;&amp;gt;+&amp;lt;&amp;lt;&lt;/code&gt; is simply not meant to be delegated to &lt;code&gt;+&lt;/code&gt;&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/rakudo/rakudo/issues/5882" rel="noopener noreferrer"&gt;bug introduced&lt;/a&gt; &lt;a href="https://github.com/rakudo/rakudo/commit/ba2431f4456ad431f43b5b1cf20c9c30f366adf1" rel="noopener noreferrer"&gt;on the way in an optimization&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/rakudo/rakudo/issues/6058#issuecomment-3712007855" rel="noopener noreferrer"&gt;breaking a community module&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;a href="https://github.com/Raku/problem-solving/issues/326" rel="noopener noreferrer"&gt;an issue&lt;/a&gt; that I opened myself with an accidentally misleading title &lt;a href="https://github.com/rakudo/rakudo/pull/4946" rel="noopener noreferrer"&gt;led to a commit&lt;/a&gt; (ironically, after my ban) that &lt;a href="https://github.com/Raku/problem-solving/issues/504" rel="noopener noreferrer"&gt;down the line caused behavior&lt;/a&gt; like &lt;code&gt;10 mod 1.9 == -9&lt;/code&gt; (undocumented and still in production at the moment, from what I know)&lt;/li&gt;

&lt;li&gt;something as basic as the smartmatch semantics of a Pair &lt;a href="https://github.com/rakudo/rakudo/commit/026c51a04571af56f414f78664088953bc6f2ff9" rel="noopener noreferrer"&gt;"was borked for 6 years"&lt;/a&gt;, basically right since release, &lt;a href="https://irclogs.raku.org/moarvm/2021-12-15.html#16:41" rel="noopener noreferrer"&gt;even being specified behavior&lt;/a&gt; and &lt;a href="https://github.com/Raku/doc/pull/4148/changes" rel="noopener noreferrer"&gt;appearing in the docs&lt;/a&gt;
&lt;/li&gt;

&lt;li&gt;another &lt;a href="https://github.com/rakudo/rakudo/issues/5794" rel="noopener noreferrer"&gt;suspicious-looking regression&lt;/a&gt; after Rakudo 2024.04 that nobody tracked down or clarified but could easily be more than a bug&lt;/li&gt;

&lt;li&gt;
&lt;code&gt;$string ~~ S/a/b/&lt;/code&gt; worked for some time and then it didn't - this was more a bug (that I considered &lt;a href="https://github.com/Raku/problem-solving/issues/350" rel="noopener noreferrer"&gt;a potential feature&lt;/a&gt; at some point, then was told was a bug in fact); anyway, I'm noting this because it's such a basic breakage lying around &lt;a href="https://github.com/rakudo/rakudo/commit/32401c4762a18c98b3d5b0bdd7c03b27400cb521" rel="noopener noreferrer"&gt;for almost&lt;/a&gt; &lt;a href="https://github.com/rakudo/rakudo/commit/35b180b8c8b90c031072150e618ee40dccf23713" rel="noopener noreferrer"&gt;a year&lt;/a&gt;
&lt;/li&gt;

&lt;li&gt;I myself lobbied for &lt;a href="https://github.com/rakudo/rakudo/commit/72856df91b2e1cafb439bcd8bcc7ae46c378d01e" rel="noopener noreferrer"&gt;DateTime numeric coercions&lt;/a&gt; which &lt;a href="https://github.com/rakudo/rakudo/issues/5201#issuecomment-1428295959" rel="noopener noreferrer"&gt;broke at least one module&lt;/a&gt; which just got patched (quite a usual workflow - if Blin catches regressions, first try to just patch those modules to the new release... not very dedicated to stability, is it)&lt;/li&gt;

&lt;li&gt;smaller breaking changes &lt;a href="https://github.com/rakudo/rakudo/issues/5134" rel="noopener noreferrer"&gt;like this&lt;/a&gt; happen regularly - similarly &lt;code&gt;.min&lt;/code&gt; and &lt;code&gt;.max&lt;/code&gt; used to be endpoints of a &lt;code&gt;Range&lt;/code&gt;, now they are &lt;a href="https://github.com/rakudo/rakudo/issues/5791" rel="noopener noreferrer"&gt;kinda-sorta&lt;/a&gt; &lt;a href="https://github.com/rakudo/rakudo/issues/6054" rel="noopener noreferrer"&gt;repurposed&lt;/a&gt; into &lt;code&gt;Seq&lt;/code&gt; "find minimum/maximum" and &lt;code&gt;(0..^10).max(by =&amp;gt; {$_}) != (0..^10).max&lt;/code&gt; will certainly bite somebody&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;Make no mistake, there &lt;a href="https://github.com/2colours/Raku-ideas/blob/c04436450e298c36764a8de2db03cce317e13d10/Issues.md?plain=1#L116" rel="noopener noreferrer"&gt;are&lt;/a&gt; &lt;a href="https://github.com/rakudo/rakudo/issues/5165" rel="noopener noreferrer"&gt;more&lt;/a&gt; &lt;a href="https://github.com/2colours/Raku-ideas/blob/c04436450e298c36764a8de2db03cce317e13d10/Issues.md?plain=1#L70" rel="noopener noreferrer"&gt;plain&lt;/a&gt; &lt;a href="https://github.com/rakudo/rakudo/issues/5256" rel="noopener noreferrer"&gt;bugs&lt;/a&gt; (I don't know, this last one is somewhere inbetween a bugfix and a design change) - I wanted to specifically bring examples for this very lax attitude to stability, making breaking changes and respecifying the language on the fly, without giving much thought to the consequences.&lt;/p&gt;

&lt;p&gt;With the Code of Conduct situation, it's not clear what the idea with having a separate CAT is, when it's mostly (completely?) filled by RSC members, or how this situation is going to help hold Steering Council members (or even the "core team") to the highest of the highest standards of conduct.&lt;/p&gt;

&lt;p&gt;The promised transparency is nowhere to be found: I think the best example came when during the 2022 Raku Conference, current RSC member Richard Hainsworth &lt;a href="https://youtu.be/1Cz1bkWB8s0?t=116" rel="noopener noreferrer"&gt;outright asked what the Steering Council has been doing to begin with&lt;/a&gt;. (Actually, the answer is also worth listening to, to give you an impression of how the RSC is, or at least was, actually taken.) Actually... the next question was also like that. The whole video might be worth a watch for whoever who feels like there isn't much of an idea of "where we are going", and - I'm afraid - find very few answers besides commonplaces. (&lt;a href="https://youtu.be/1Cz1bkWB8s0?t=934" rel="noopener noreferrer"&gt;"when we move on to the next Steering Council (...)"&lt;/a&gt; aged horribly.)&lt;/p&gt;

&lt;p&gt;It may be my ignorance but to my knowledge, the community has only gotten further from knowing what the "core team" is and who are its members. (Based on the description, I was certainly not a member so that's clear at least.)&lt;/p&gt;

&lt;p&gt;Anyway, it never has come to matter. The last language version released, to this date in March 2026, is 6.d, released in &lt;a href="https://blogs.perl.org/users/zoffix_znet/2018/11/announce-raku-perl-6-diwali-6d-language-specification-release.html" rel="noopener noreferrer"&gt;November 2018&lt;/a&gt;, still managed and announced by Zoffix Znet, under the name "Raku Perl 6", almost 2 years before the Steering Council came to be. People came and go (including the ejection of 2 RSC members and the quiet departure of Rakudo's main architect), the Steering Council kept refilling itself, and we still don't have a release date for language version 6.e. Maybe we will get it this year. Maybe next year. One could have technical questions.&lt;br&gt;&lt;br&gt;
One could also ask governance questions (&lt;em&gt;as I in fact &lt;a href="https://youtu.be/7Zqq0AVwyF4?t=100" rel="noopener noreferrer"&gt;did&lt;/a&gt; at the 2023 conference - great that these are recorded; &lt;a href="https://youtu.be/7Zqq0AVwyF4?t=373" rel="noopener noreferrer"&gt;"I don't think it was ever the intent that it would be taking this long (...)"&lt;/a&gt; - &lt;a href="https://youtu.be/7Zqq0AVwyF4?t=406" rel="noopener noreferrer"&gt;is it 2024 yet?&lt;/a&gt;&lt;/em&gt;). In a project that is largely getting nowhere for so long that I could name 5 (&lt;em&gt;five - talking about a group of seven; if the &lt;a href="https://github.com/Raku-Steering-Council/Papers/tree/main/announcements" rel="noopener noreferrer"&gt;announcements&lt;/a&gt; have been good for something, it's to track this&lt;/em&gt;) Steering Council members offhand who have left (either by themselves or by force), with little to no governance structure, and very little effort going into resolving actually stalled issues, maybe the model was too susceptible to something resembling usucaption, and that seems to have indeed happened: a small casual community of people remained, either indifferent or actually receptive to this type of leadership, not even having the fantasy or any kind of precedent to a change - either in transparency or in the seriousness of the project. After all, they really just don't get to know a lot, and have no reason to feel involved in Raku at a project level. (&lt;em&gt;Just as much as they didn't need to know my ban, besides reaching out to the administration of the Discord server on IRC.&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;The minimal governance and intervention to community process the Raku Steering Council did deliver on, as exemplified &lt;a href="https://github.com/Raku-Steering-Council/Papers/commits/main/resolutions" rel="noopener noreferrer"&gt;by the resolutions&lt;/a&gt; and &lt;a href="https://github.com/Raku-Steering-Council/Papers/tree/main/minutes" rel="noopener noreferrer"&gt;the minutes&lt;/a&gt; that actually take minutes to read for every year, seemingly less and less.&lt;br&gt;
Yet somehow, when "the community is in danger" by "bad people" like myself (or @AlexDaniel earlier), then the decisions go swiftly, and only the transparency is minimal.&lt;/p&gt;

&lt;p&gt;I was trying to fix the latter in this report. Comments are more than welcome.&lt;/p&gt;

&lt;h2&gt;
  
  
  Appendix: Acknowledgements
&lt;/h2&gt;

&lt;p&gt;... or "credits", if you really will.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;It won't stop amazing me how it has become my epithet for the old guard that I'm selfish or egoistic when of the 4 talks/presentations I had on Raku Conferences, 2 were about how I maintain or renovate old projects and "you can do it, too" and 1 was outright a &lt;a href="https://www.youtube.com/watch?v=0SggVflB0EE" rel="noopener noreferrer"&gt;round of applause to great ecosystem authors&lt;/a&gt;. Sorry that I can't give credit for things that I don't find any good, like zef, or the years-long stagnation of raku.land.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I never minded giving credit where I thought it was due, and this was never meant to depend on personal opinions or conflicts. Yes, Liz has invested more into Raku, probably for 15 years if not more, than anybody else in all accounts, and she probably does what she believes is the best for the project. Yes, Richard pushing forward with the doc website and RakuDoc v2 are probably the best examples in the few years of actually designing, planning and executing something within the Raku community. Yes, Steve Roe's new raku.org site is way better and more inspiring than the old design (and my &lt;a href="https://github.com/Raku/raku.org/issues/174" rel="noopener noreferrer"&gt;gradual maintenance plan for that&lt;/a&gt;) and &lt;a href="https://github.com/Raku/problem-solving/issues/507" rel="noopener noreferrer"&gt;the whole perspective he is taking&lt;/a&gt; is quite laudable. Geoffrey is a TUI wizard, Stefan (@niner) is perhaps the main reason RakuAST can even be completed, and so on.&lt;/p&gt;

&lt;p&gt;Still I wanted to specifically thank those people who may not have necessarily liked me (who knows, maybe some of them even "reported" me - anyway, the way things get handled is the responsibility of the CAT) but stood out of the publicly dismissive, defensive, personal communication style:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Anton Antonov: We actually had some beef early on on Discord but in the long run, we learned to tolerate or even appreciate each other's peculiarities. We are still on pretty good terms to this day - I wish I had half of his wisdom, both technical and commonsensical.&lt;/li&gt;
&lt;li&gt;CIAvash: alternative raku.org site, doc search bar, syntax highlighter, and probably the &lt;a href="https://github.com/Raku/user-experience/issues/32" rel="noopener noreferrer"&gt;best approach&lt;/a&gt; to &lt;a href="https://github.com/Raku/raku.org/issues/119" rel="noopener noreferrer"&gt;constructive criticism&lt;/a&gt; - I think Siavash was even under-appreciated for the kind of input and proficiency he brought to the project, and demonstrated the same calm attitude towards me as well&lt;/li&gt;
&lt;li&gt;@ab5tract (John Haltiwanger): I don't think the RSC has unanimous collective guilt, and I think it is good to acknowledge that some people could stay more focused on the substance of issues and in general found better means and ways to interact. I would like to believe, if the vocal members were mostly like him, not only our interactions would have looked better but the trajectory of the project as well.&lt;/li&gt;
&lt;li&gt;@Kaiepi/@morfent (Ben Davies): the kind of person I think all sides and all participants wished the community had more of. They were the last bastion of the JVM-based runtime, pretty much, and also somebody who really went ahead and experimented with rather large core and documentation changes, without making a big deal out of it. I think they also handled disagreements very gracefully with me - I wish there was a way to exchange more conflicts for bringing them back to life and the Raku community. Rest in peace.&lt;/li&gt;
&lt;li&gt;
&lt;a class="mentioned-user" href="https://dev.to/coke"&gt;@coke&lt;/a&gt; (Will Coleda), @arkuiat (Eric Forste): I think for a couple of years, the documentation team is the best managed corner of the Raku project, and this is true with or without me. Here, the "needs more (wo)manpower" seems fair. I think the recent times have shown nicely that people who might not like each other personally can still work together in a sensible manner - but anyway, I'm not worried about the doc team managing without me around just fine.&lt;/li&gt;
&lt;li&gt;Patrick Böker: let me just say this: if there were 3 or 4 more people like him attitude-wise, dedication-wise and competence-wise, then the spirit and the output of the Raku community would be twice as good. Who am I to criticize a patient, humble and persistent member (quite surely a &lt;em&gt;core&lt;/em&gt; developer) for not taking a bigger role in leadership? But one can wish there were more people like him around the heart of the project&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>rakulang</category>
    </item>
  </channel>
</rss>
