=head1 NAME C - Guess the gender of a "Christian" first name. =head1 SYNOPSIS use Text::GenderFromName; print gender("Jon"); # prints "m" Text::GenderFromName is available at a CPAN site near you. =head1 DESCRIPTION This module provides a lone function: C, which returns one of three values: "m" for male, "f" for female", or UNDEF if it doesn't know. For instance, gender("Chris") is UNDEF. The original code assumed a default of male, and I am happy to contribute to the destruction of the oppressive Patriarchy by returning an UNDEF value if no rule triggers. Ha ha! Seriously, it'll be useful to know when C has no clue. For the curious, I ran Text::GenderFromName on The Perl Journal's subscriber list. The result? Male: 68% Female: 32% =head1 BUGS C can never be perfect. With the addition of the huge word lists, some of the regex rules are now redundant, so gender() may take several more milliseconds to return than it could. I'm sure that many of these rules could return immediately upon firing. However, the original author arranged them in a very deliberate order, with more specific rules at the end overruling earlier rules. Consequently, I can't turn all of these rules into the speedier form C without throwing away the meaning of the ordering. The rules should probably be made case-insensitive, but I bet there's some funky situation in which that'll lose. =head1 AUTHOR Jon Orwant Readable Publications, Inc. orwant@readable.com This is an adaptation of an 8/91 awk script by Scott Pakin in the December 91 issue of Computer Language Monthly. Small contributions by Andrew Langmead and John Strickler. Thanks to Bob Baldwin, Matt Bishop, and Daniel Klein for their lists of names. =cut