May 2017 Archives

graphql-perl - Pegex findings

I'm porting the reference implementation of GraphQL for JavaScript to Perl, sponsored by Perl Careers. Part of that is obviously to lex/parse GraphQL queries. I decided to try this with Pegex.

Key findings:

  • Pegex rules with regexes need to keep Pegex "atoms" separated from the "/" characters by whitespace, else it will be treated as a literal
  • If you override the "ws" rule, do not have "-" in a regex in any sub-rules, or the c…

graphql-perl - a GraphQL implementation in Perl

I have recently started porting the reference implementation of GraphQL for JavaScript to Perl, sponsored by Perl Careers. My key considerations:

  • Use as "modern" Perl as possible: one of the Mo* family, plus type-checking
  • Follow the JS implementation where it makes sense, but be open to more Perlish ways where that's easier/better

You can see the GitHub repo at https://github.com/graphql-perl/graphql-perl, an…

Perl Toolchain Summit 2017

I had the honour of being invited to the Perl Toolchain Summit 2017, held in Lyon. It was amazing to meet so many of my Perl heroes, and to work with them on Perl toolchain code for a concentrated few days.

The atmosphere, food, and company were all superb, and the opportunity to brainstorm, collaborate, and agree on things to work on in the future unmissable.

I was able to produce these bits of code:

About Mohawk

user-pic I blog about Perl.