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).