Skip to content

Instantly share code, notes, and snippets.

@jkeenan
jkeenan / how-to-bisect-a-perl-debugger-problem.mkdn
Last active September 22, 2018 15:56
How to Bisect a Problem in the Perl 5 Debugger

How to Bisect a Problem in the Perl 5 Debugger

Bisection and the Perl 5 Core Distribution

Bisection is a developer's technique used to locate the point in a series of commits to a repository where the behavior of an application changed. While this change could be a change for the better -- "When did this feature start accidentally working?" -- the change being sought is usually a change for the worse: "When did this feature stop working correctly?".

@jkeenan
jkeenan / feedback-from-former-director-of-technology.mkdn
Created October 2, 2017 13:54
Feedback from a veteran Perl user for discussion at 2017 Perl 5 Core Hackathon

The following are comments I solicited from a veteran Perl user who has held positions at the "director of technology" level, spoken at Perl conferences and contributed to major CPAN projects. I do not necessarily agree with these comments but believe they are worthy of consideration at the 2017 Perl 5 Core Hackathon and in other contexts. -- jkeenan

I spend a lot of time thinking about this and in the end it comes down to two general categories of things. The first one is obvious stuff about how we communicate the worth of Perl to technology consumers, and support our existing user base. The second (and in my mind the most important one) has to

@jkeenan
jkeenan / first-email.pl
Last active December 3, 2017 19:14
Send an email on a system where 'sendmail' is running
#!/usr/bin/env perl
use strict;
use warnings;
use 5.12.0;
use Email::Sender::Simple qw(sendmail);
use Email::Simple;
use Email::Simple::Creator;
my $instructions =
'http://search.cpan.org/~rjbs/Email-Sender-1.300031/lib/Email/Sender/Manual/QuickStart.pm';
=pod
Here is a list of CPAN distributions which B<may> have external Makefiles.
I have not built or used any of these, so your mileage may vary.
=cut
my %distros = {
"$CPAN/authors/id/A/AG/AGENT/Lemplate-0.15.tar.gz" => { "doc/Makefile" => 1, "src/Makefile" => 1 },
@jkeenan
jkeenan / gist:4e1d977860f0d44709f38f0e0623b430
Last active October 14, 2018 01:41
Hey! Wasn't that what Parrot was supposed to do?
From https://github.com/Microsoft/xlang ...
"The xlang project enables developers to take existing shared libraries,
implemented in one programming language and make that library's APIs
available to client code using a different programming language. Thus
the name "xlang," for cross-language.
"Additionally, the xlang toolset will be available on multiple operating
systems. This means that if your shared library is portable to various
operating systems, then you can use the xlang tooling to make that shared
@jkeenan
jkeenan / perlmaketargets.md
Created October 24, 2022 12:39
Perl 'make' targets on Unix (unofficial)

NAME

perlmaketargets - A guide to Perl's make targets

DESCRIPTION

This document provides an introduction to the make targets you are most likely to use when building perl.

This document should be considered as tips for your work on the core