{
    "mode": "perldoc",
    "parameter": "Lingua::Stem::EnBroken",
    "section": "",
    "url": "https://www.chedong.com/phpMan.php/perldoc/Lingua%3A%3AStem%3A%3AEnBroken/json",
    "generated": "2026-06-13T08:53:58Z",
    "synopsis": "use Lingua::Stem::EnBroken;\nmy $stems   = Lingua::Stem::EnBroken::stem({ -words => $wordlistreference,\n-locale => 'en',\n-exceptions => $exceptionshash,\n});",
    "sections": {
        "NAME": {
            "content": "Lingua::Stem::EnBroken - Porter's stemming algorithm for 'generic' English\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "use Lingua::Stem::EnBroken;\nmy $stems   = Lingua::Stem::EnBroken::stem({ -words => $wordlistreference,\n-locale => 'en',\n-exceptions => $exceptionshash,\n});\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "This routine MIS-applies the Porter Stemming Algorithm to its parameters, returning the stemmed\nwords. It is an intentionally broken version of Lingua::Stem::En for people needing backwards\ncompatibility with Lingua::Stem 0.30 and Lingua::Stem 0.40. Do not use it if you aren't one of\nthose people.\n\nIt is derived from the C program \"stemmer.c\" as found in freewais and elsewhere, which contains\nthese notes:\n\nPurpose:    Implementation of the Porter stemming algorithm documented\nin: Porter, M.F., \"An Algorithm For Suffix Stripping,\"\nProgram 14 (3), July 1980, pp. 130-137.\nProvenance: Written by B. Frakes and C. Cox, 1986.\n\nI have re-interpreted areas that use Frakes and Cox's \"WordSize\" function. My version may\nmisbehave on short words starting with \"y\", but I can't think of any examples.\n\nThe step numbers correspond to Frakes and Cox, and are probably in Porter's article (which I've\nnot seen). Porter's algorithm still has rough spots (e.g current/currency, -ings words), which\nI've not attempted to cure, although I have added support for the British -ise suffix.\n",
            "subsections": []
        },
        "CHANGES": {
            "content": "2003.09.28 -  Documentation fix\n\n2000.09.14 -  Forked from the Lingua::Stem::En.pm module to provide\na backward compatibly broken version for people needing\nconsistent behavior with 0.30 and 0.40 more than accurate\nstemming.\n",
            "subsections": []
        },
        "METHODS": {
            "content": "",
            "subsections": [
                {
                    "name": "stem",
                    "content": "Stems a list of passed words using the rules of US English. Returns an anonymous array\nreference to the stemmed words.\n\nExample:\n\nmy $stemmedwords = Lingua::Stem::EnBroken::stem({ -words => \\@words,\n-locale => 'en',\n-exceptions => \\%exceptions,\n});\n"
                },
                {
                    "name": "stem_caching",
                    "content": "Sets the level of stem caching.\n\n'0' means 'no caching'. This is the default level.\n\n'1' means 'cache per run'. This caches stemming results during a single call to 'stem'.\n\n'2' means 'cache indefinitely'. This caches stemming results until either the process exits\nor the 'clearstemcache' method is called.\n\nclearstemcache;\nClears the cache of stemmed words\n"
                }
            ]
        },
        "NOTES": {
            "content": "This code is almost entirely derived from the Porter 2.1 module written by Jim Richardson.\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "Lingua::Stem\n",
            "subsections": []
        },
        "AUTHOR": {
            "content": "Jim Richardson, University of Sydney\njimr@maths.usyd.edu.au or http://www.maths.usyd.edu.au:8000/jimr.html\n\nIntegration in Lingua::Stem by\nJerilyn Franz, FreeRun Technologies,\n<cpan@jerilyn.info>\n",
            "subsections": []
        },
        "COPYRIGHT": {
            "content": "Jim Richardson, University of Sydney Jerilyn Franz, FreeRun Technologies\n\nThis code is freely available under the same terms as Perl.\n",
            "subsections": []
        },
        "BUGS": {
            "content": "",
            "subsections": []
        },
        "TODO": {
            "content": "",
            "subsections": []
        }
    },
    "summary": "Lingua::Stem::EnBroken - Porter's stemming algorithm for 'generic' English",
    "flags": [],
    "examples": [],
    "see_also": []
}