Why designing a language and designing a command line are different
If you’re not familiar with them, take a moment to check out some of Damian Conway’s modules. Good examples of what I’ll be referencing in this post are Perl6::Form and Text::Balanced. Damian’s modules are the ultimate in user-friendliness, or to put it another way, DWIMminess (Do-What-I-Meaniness). He has relatively few functions, each of which is [...]
Perl 6 Rules: Elementary Compositionality and More Contrived Vocabulary
Larry Wall made a change to Synopsis 5, section “Longest-token matching” splitting the alternation operator | in two: | and ||. The idea is that || works just like the old one: try to match the left any way you can, and if that fails, then try the right. This makes sense to me, and [...]
The reason I left Perl 6
I just wrote an article about my absence in the Perl 6 project.
use Perl journal
I started a use Perl; journal, where I’ll be posting design team meeting notes and various musings about theoretical Perl 6.
No monotypes
Perl 6 has a very rich type system, even though it’s not done. As far as my knowledge goes (which in this area is not very far compared to some of the lambdacamels), it makes the fewest assumptions and restrictions of any type system of any other language. I’ll be writing today about a statement [...]
More Multimethod Madness
Damian and I have been intelligently screaming at each other on perl6-language, finally really fleshing out the Manhattan distance MMD debate. It has settled down recently, after I discovered that Damian had been arguing against something that was almost, but not quite, entirely unlike my algorithm. I looked through the message history and realized that [...]
Question(s) for Larry
Here are some questions for Larry before so I can ask when he wakes up: Why does BUILD bind named-style parameters at the end? If it bound at the beginning, I could do consistency/sanity checking on them within the body of BUILD. At the moment, I need to specify them in the signature of BUILD [...]
Perl 6 Progress
Enter my very first purely Perl 6 post. I’ve been working on the PIL implementation in Perl 6. PIL is an intermediate, retargetable semantics tree that represents the basic calculus of Perl 6. We compile Perl 6 into PIL, and then we can target PIL to whatver. PIL is very simple: only one page of [...]
Logic.pm preview
Due to a request from several people, I am releasing a not-yet-CPAN-ready module called Logic.pm. The development of the idea to write this module is long and boring. But it’s my blog, not yours, so I’ll talk about it. Many of the problems that I have been solving recently in programming have involved backtracking: rule [...]
Two modules in One day
I just wrote and uploaded Perl6::Attributes to CPAN. It came out of frustration for code like this: sub populate { my ($self, $n) = @_; for (1..$n) { push @{$self->{organisms}}, Organism->new(rand($self->{width}), rand($self->{height})); } } Which I can now write like this: sub populate { my ($self, $n) = @_; for (1..$n) { push @.organisms, Organism->new(rand($.width), [...]

Recent Comments