NAME
Lingua::EN::Conjugate - Conjugation of English verbs
SYNOPSIS
use Lingua::EN::Conjugate qw( conjugate conjugations ); use Data::Dumper;
# scalar context with tense and pronoun defined as scalars,
#returns a scalar
my $walk = conjugate( 'verb'=>'walk',
'tense'=>'perfect_prog',
'pronoun'=>'he' );
print $walk . "\n";
# scalar context with tense and pronoun undefined or defined
#as array refs, returns a hashref
my $go = conjugate( 'verb'=>'go',
'tense'=>[qw(past modal_perf)],
'modal'=>'might not' ) ;
print Dumper($go);
# array context, returns an array of conjugated forms
my @be = conjugate( 'verb'=>'be',
'pronoun'=>[qw(I we)],
'tense'=>'past_prog' );
print join("\n", @be);
print conjugations( 'verb'=>'walk' );
DESCRIPTION
This module conjugates English verbs.
Thanks to Susan Jones for the list of irregular verbs and an explanation of English verb tenses: http://www2.gsu.edu/~wwwesl/egw/grlists.htm.
present -> we drive present_prog -> we are driving past -> we drove past_prog -> we were driving perfect -> we have driven past_perfect -> we had driven perfect_prog -> we have been driving past_perfect_prog -> we had been driving modal -> we will drive modal_prog -> we will be driving modal_perf -> we will have driven modal_perf_prog -> we will have been driving conjunctive_present -> we drive imperative -> let's drive
note that the "future tense" is called "modal" here, with "will" as the default. You could substitute any of (shall / can / can't / could / must) as the modal verb, and it would still make sense. See http://www.englishclub.com/grammar/verbs-modals_can.htm.
EXPORT
None by default. You can export the following functions and variables:
conjugate
@tenses
@pronouns
BUGS
HISTORY
- 0.1
-
Original version -- no guarantees.
- 0.2 Added a stop-list for words that shouldn't have the final consonant doubled when adding -ed or -ing.
AUTHOR
Russ Graham, russgraham@gmail.com
SEE ALSO
perl(1).