• Website:
  • About: I must blog about Perl
  • Commented on Why I try to avoid Perl's punctuation variables
    FWIW, if you don't want to create another lexical, you can still use @{[ ]} with a join inside there, no? my $query = <<"END_SQL"; SELECT foo, bar, baz FROM SomeTable WHERE id IN @{[ join ', ' => ('?')...
  • Commented on Concurrency Weirdness
    Ah, yes, arrays are not thread safe if you have on thread adding and another thread removing. Please use Channels for that (the P6 equivalent to P5's Thread::Queue). Locks should probably never be used in any user code....
  • Commented on Concurrency Weirdness
    I first tried to minimize the functionality as I understand it: sub MAIN($lines) { .say for $*IN.lines.tail($lines); } This works fine. Then I tried mixing in the named pipe. sub MAIN( $lines, $pipefile ){ my $p = run << mkfifo...
  • Commented on Further Perl 6 Adventures
    $ 6 'sub a($a,$b) { }; &a.signature.perl.say' :($a, $b) $ 6 'my $b = -> $a,$b { }; $b.signature.perl.say' :($a, $b) Signatures are an object, just like any other thing in Perl 6. Any Callable has it, and it...
  • Commented on Async Aborts and P6SGI
    Thank you for this bug report. Not being a MoarVM / libuv person much myself, I won't act on it in the near future. But I'm pretty sure some other people will soon!...
  • Commented on Christmas Came, Bah Humbug
    As I stated in my London Perl Workshop Keynote, this is just the End of the Beginning. I agree that for Perl 6 to take off, there needs to be a business case for it. In 2016 we will see...
  • Posted Christmas Is Here! to Liz

    Check out the final Perl 6 Advent post of 2015.

    Also check out Jonathan Worthington's thoughts on the 6.c release o…

  • Commented on Fluent interfaces in Perl 6
    Cool! One remark: you don't need a closure for showing an attribute in a string, so: qq/Name: $.name/ will just do fine!...
  • Commented on Is Perl still a useful, viable language?
    I agree that Perl is the future. However, I think that if you think Perl's future depends on Larry's decision on what to name the next version of Perl, you are both demeaning to the fine folks that keep working...
  • Commented on Mystery Line in Proc Input in Perl 6
    Looking into it, it appears there is a different logic in setting EOF between getting a handle from a file, or from a process. The latter appears to be setting EOF too late, hence the extra empty line. Determining cause...
  • Commented on Refactoring Very Old Perl 5 in Perl 6
    Martin Hradil: re .index returning 0 but True? Alas, it didn't make it past TimToady's vetting in the long run :-( I removed that feature yesterday again, Long story: the feature was implemented using a subclass of Int, basically: class...
  • Commented on Refactoring Very Old Perl 5 in Perl 6
    Great post! Some comments: 1. You're using .trim the wrong way: .trim does *not* modify $_. It should probably warn in that case, actually. 2. You don't need .trim at all, as .words ignores any whitespace at the begin or...
  • Commented on Method Privacy in Perl
    Perhaps a source of enlightenment:
  • Commented on Rakudo and NQP Internals Workshop (14/15 Sep)
    Down to 2...
  • Commented on Rakudo and NQP Internals Workshop (14/15 Sep)
    Actually, down to 3 now!...
  • Posted Rakudo and NQP Internals Workshop (14/15 Sep) to Liz

    Perl6 is at a turning point. Now running on 2 virtual machines (Parrot and JVM), with 2 more coming available in the next months (Javascript and MoarVM), with abstract concurrency on the JVM now and full Perl 5 interop at the horizon in MoarVM.

    To make it easier for past, current and futu…

  • Commented on YAPC::Europe 2013 in Kiev, week minus 19
    Some people in the Ukraine may not like "Back in the USSR" as the background music. Then again, it *is* April 1st :-)...
  • Commented on Why I'm considering dropping Perlmonks
    I left PerlMonks a long time ago already but for a technical reason: it is just too damn slow. I was impressed by Schwern's YAPC keynote. The comic strip is just bad and in bad taste. As far as I'm...
  • Posted Perl Reunification Summit to Liz

    As some of you may know, my partner Wendy van Dijk and me organized a Perl Reunification Summit on the Friday and Saturday before the YAPC::Europe. Organizing this started in May already, when I tried to contact as many people face to face to discuss this, before finalizing the plan. When the…

  • Posted First Post to Liz

    So, why don't you write a blog? A question I have been asked many a time in the past years.

    I guess I mainly felt that I didn't have to tell the world much. And I was busy with $work.

    Then you stop $work and start with $sabbatical. And start acting on the strange ideas that you …

  • Commented on So, Kiev 2013
    Please make sure that he gets a visa. Otherwise, I understand, he will not be let into the Ukraine (as Australia is one of the few countries of which its citizens need a visa to travel to the Ukraine)....
  • Commented on post-yapc
    Steven: Perl 5 momentum is much on everybody’s mind. The last thing I want is to do, is to take people away from Perl 5 development. What I do want to achieve, is a long term environment in which Perl...
Subscribe to feed Recent Actions from Liz

  • Aristotle commented on Why I try to avoid Perl's punctuation variables

    More seriously, global variables bad, because action at a distance bad, and to the extent that Abigail’s version of the code is less readable than other formulations I find it’s mostly owing to the distance between setting the punctuation variable and the effect that that assignment has.

  • Aaron Crane commented on Why I try to avoid Perl's punctuation variables

    There's at least one valid use of $" that can't be replaced with join:

    my @regexes = list_of_qr_objects();
    my $combined = do { local $" = '|'; qr/@regexes/ };

    If any of the regex objects contain (?{ }) or (??{ }) constructs, using join would decompile and reparse the code. That in turn would require use re 'eval' in scope for the final qr, and even then it would break the use of any lexical variables that those code blocks might close over.

    However, qr/@regexes/

  • Joel Berger commented on Why I try to avoid Perl's punctuation variables

    This is one of the few examples where i know an even better trick, at least as long as you are using DBD::Pg

    my $query = <<"END_SQL";
        SELECT  foo, bar, baz
          FROM  SomeTable
        WHERE  id = ANY(?)

    And then pass an array reference as the value. \o/

  • Merlyn Kline commented on Why I try to avoid Perl's punctuation variables

    I'm with Ovid. I love that perl will let me do very concise things and has all these features, but they should be used appropriately. Invoking perl with -e on the command line to do some one-off task is often only really possible this way, and knocking up a quick helper utility for something is much quicker and easier with these features.

    But Abigail's example wouldn't make it past review onto a production server. I'm on a multi-decade project and there's an inevitable turnover of staff so maintainability of code is critical; moreso even than having it work properly (maintainable but…

  • Steve Nolte commented on Why I try to avoid Perl's punctuation variables

    I applaud this article and others like it. At $work we are constantly fighting bugs in code that is "too clever" and not explicit. Also fascinating to see what may seem obvious to some (e.g. the Babycart operator) but quite confusing to newbies.

Subscribe to feed Responses to Comments from Liz

About is a common blogging platform for the Perl community. Written in Perl and offering the modern features you’ve come to expect in blog platforms, the site is hosted by Dave Cross and Aaron Crane, with a design donated by Six Apart, Ltd.