RFC 190, by Damian Conway: NEXT pseudoclass for method redispatch

In his series of object orientation RFC’s Perl/Raku luminary Damian Conway includes a proposal for method redispatch, RFC 190, which is the subject of today’s article. On method dispatch Perl has a pseudoclass named SUPER which an object can use to invoke a method of its parent class that it has overridden. It looks approximatelyContinue reading “RFC 190, by Damian Conway: NEXT pseudoclass for method redispatch”

RFC22: Control flow: Builtin switch statement, by Damian Conway

The problem C has switch/case, and many other languages either copied it, or created a similar construct. Perl in 2000 didn’t have any such thing, and this was seen as a lack. A Tale of Two Languages This RFC not only became two (related) features, it did so in both Perl and Raku with dramaticallyContinue reading “RFC22: Control flow: Builtin switch statement, by Damian Conway”

RFC 43: Integrate BigInts (and BigRats) Support Tightly With The Basic Scalars

Intro RFC 43, titled ‘Integrate BigInts (and BigRats) Support Tightly With The Basic Scalars’ was submitted by Jarkko Hietaniemi on 5 August 2000. It remains at version 1 and was never frozen during the official RFC review process. Despite this somewhat “unoffical” seeming status, the rational (or Rat) numeric type, by default, powers all ofContinue reading “RFC 43: Integrate BigInts (and BigRats) Support Tightly With The Basic Scalars”

RFC 54, by Damian Conway: Operators: Polymorphic comparisons

This RFC was originally proposed on August 7th 2020 and frozen in six weeks. It described a frustration with comparison operations in Perl. The expression: “cat” == “dog” #True Perl (and now Raku) has excellent support for generic programming because of dynamic typing, generic data types and interface polymorphism. Just about the only place whereContinue reading “RFC 54, by Damian Conway: Operators: Polymorphic comparisons”

RFC 64: New pragma ‘scope’ to change Perl’s default scoping

Let’s talk about a fun RFC that mostly did not make its way into current day Raku, nor is it planned for later implementation. This is about RFC 64 by Nathan Wiger. Let me quote the abstract: Historically, Perl has had the default “everything’s global” scope. This means that you must explicitly define every variableContinue reading “RFC 64: New pragma ‘scope’ to change Perl’s default scoping”

RFC 5, by Michael J. Mathews: Multiline comments

This is the first RFC proposed related to documentation. It asks for a common feature in most of the modern programming languages: multiline comments. The problem of not having multi-line comments is quite obvious: if you need to comment a large chunk of code, you need to manually insert a # symbol at the beginningContinue reading “RFC 5, by Michael J. Mathews: Multiline comments”

RFC 225: Superpositions (aka Junctions)

Damian Conway is one of those names in the Perl and Raku world that almost doesn’t need explaining. He is one of the most prolific contributors to CPAN and was foundational in the design of Raku (then Perl 6). One of his more interesting proposals came in RFC225 on Superpositions, which suggested making his PerlContinue reading “RFC 225: Superpositions (aka Junctions)”

RFC 168, by Johan Vromans: Built-in functions should be functions

Proposed on 27 August 2000, frozen on 20 September 2000, which was a generalization of RFC 26: Named operators versus functions proposed on 4 August 2000, frozen on 28 August 2000, also by Johan Vromans. Johan’s proposal was to completely obliterate the difference between built-in functions, such as abs, and functions defined by the user. In Perl, abs can beContinue reading “RFC 168, by Johan Vromans: Built-in functions should be functions”

RFC 145, by Eric J. Roode: Brace-matching for Perl Regular Expressions

Problem and proposal The RFC 145 calls for a new regex mechanism to assist in matching paired characters like parentheses, ensuring that they are balanced. There are many “paired characters” in more or less daily use: (), [], {}, <>, «», “”, ”, depending on your local even »«, or in the fancy world ofContinue reading “RFC 145, by Eric J. Roode: Brace-matching for Perl Regular Expressions”

RFC 137: Perl OO should not be fundamentally changed.

Now, as you have read the title and already stopped laughing… Er, not all of you yet? Ok, I’ll give you another minute… Good, let’s be serious now. RFC 137 was written by Damian Conway. Yes, the title too. No, I’m serious! Check it yourself! And then also read other RFCs from language-objects category. TurnsContinue reading “RFC 137: Perl OO should not be fundamentally changed.”