Buddy Burden > Data-Random-0.11 > Data::Random::WordList

Download:
Data-Random-0.11.tar.gz

Dependencies

Annotate this POD

Website

CPAN RT

New  1
Open  0
View/Report Bugs
Module Version: 0.11   Source  

NAME ^

Data::Random::WordList - Perl module to get random words from a word list

SYNOPSIS ^

  use Data::Random::WordList;

  my $wl = new Data::Random::WordList( wordlist => '/usr/dict/words' );

  my @rand_words = $wl->get_words(10);

  $wl->close();

DESCRIPTION ^

Data::Random::WordList is a module that manages a file containing a list of words.

The module expects each line of the word list file to contain only one word. It could thus be easily used to select random lines from a file, but for coherency's sake, I'll keep referring to each line as a word.

The module uses a persistent filehandle so that there isn't a lot of overhead every time you want to fetch a list of random words. However, it's much more efficient to grab multiple words at a time than it is to fetch one word at a time multiple times.

The module also refrains from reading the whole file into memory, so it can be safer to use with larger files.

METHODS ^

new()

Returns a reference to a new Data::Random::WordList object. Use the "wordlist" param to initialize the object:

get_words([NUM])

NUM contains the number of words you want from the wordlist. NUM defaults to 1 if it's not specified. get_words() dies if NUM is greater than the number of words in the wordlist. This function returns an array or an array reference depending on the context in which it's called.

close()

Closes the filehandle associated with the word list. It's good practice to do this every time you're done with the word list.

VERSION ^

0.11

AUTHOR ^

Originally written by: Adekunle Olonoh

Currently maintained by: Buddy Burden (barefoot@cpan.org), starting with version 0.06

COPYRIGHT ^

Copyright (c) 2000-2011 Adekunle Olonoh. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO ^

Data::Random

syntax highlighting: