The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


Lingua::AR::Word - Perl extension to get the stem and ArabTeX encoding of Arabic words


        use utf8;
        use Lingua::AR::Word;

        my $word=Lingua::AR::Word->new("ARABIC_WORD_IN_UTF8");

        open FOUTPUT, ">>:utf8", "output" or die "Cannot create output file: $!\n";

        print FOUTPUT $word->get_word();
        print FOUTPUT $word->get_stem();
        print FOUTPUT $word->get_arabtex();

        close FOUTPUT;


In order to work on an Arabic word, you need to create the object Lingua::AR::Word, passing the Arabic word encoded in utf8 to the constructor. You will then be able to get the stem through get_stem(). You will get the ArabTeX translittered form through get_arabtex().

Remember that input-output directly to shell will not be useful as long as your shell doesn't support utf8 encoded characters. In the example above, for example, I piped the output to another file forcing its writing in utf8.


If you also want the translation, check out the Lingua::AR::Db module. You may find more info about ArabTeX encoding at


Add function which returns the Arabic form of a translitterated word.
Add function which analyzes the arabic word and returns info about it: gender, {gender,number} of person/people it refers to,..


Andrea Benazzo, <>


Copyright (c) 2006 Andrea Benazzo. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.