Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 956 Categories, Downloaded 50.234.150 Times

Sort::ArbBiLex 4.01

  Date Added: May 23, 2010  |  Visits: 864

Sort::ArbBiLex

Report Broken Link
Printer Friendly Version


Product Homepage
Download (89 downloads)



Sort::ArbBiLex is a Perl module that can make sort functions for arbitrary sort orders. SYNOPSIS use Sort::ArbBiLex ( fulani_sort, # ask for a &fulani_sort to be defined "a A c C ch Ch CH ch Ch CH e E l L lh Lh LH n N r R s S u U z Z " ); @words = <>; @stuff = fulani_sort(@words); foreach (@stuff) { print "<$_>n" } CONCEPTS Writing systems for different languages usually have specific sort orders for the glyphs (characters, or clusters of characters) that each writing system uses. For well-known national languages, these different sort orders (or someones idea of them) are formalized in the locale for each such language, on operating system flavors that support locales. However, there are problems with locales; cf. perllocale. Chief among the problems relevant here are: * The basic concept of "locale" conflates language/dialect, writing system, and character set -- and country/region, to a certain extent. This may be inappropriate for the text you want to sort. Notably, this assumes standardization where none may exist (whats THE sort order for a language that has five different Roman-letter-based writing systems in use?). * On many OS flavors, there is no locale support. * Even on many OS flavors that do suport locales, the user cannot create his own locales as needed. * The "scope" of a locale may not be what the user wants -- if you want, in a single program, to sort the array @foo by one locale, and an array @bar by another locale, this may prove difficult or impossible. In other words, locales (even if available) may not sort the way you want, and are not portable in any case. This module is meant to provide an alternative to locale-based sorting. This module makes functions for you that implement bi-level lexicographic sorting according to a sort order you specify. "Lexicographic sorting" means comparing the letters (or properly, "glyphs", as Ill call them here, when a single glyph can encompass several letters, as with digraphs) in strings, starting from the start of the string (so that "apple" comes after "apoplexy", say) -- as opposed to, say, sorting by numeric value. "Lexicographic sorting" is sometimes used to mean just "ASCIIbetical sorting", but I use it to mean the sort order used by lexicographers, in dictionaries (at least for alphabetic languages). Consider the words "resume" and "résumé" (the latter should display on your POD viewer with acute accents on the es). If you declare a sort order such that e-acute ("é") is a letter after e (no accent), then "résumé" (with accents) would sort after every word starting with "re" (no accent) -- so "résumé" (with accents) would come after "reward". If, however, you treated e (no accent) and e-acute as the same letter, the ordering of "resume" and "résumé" (with accents) would be unpredictable, since they would count as the same thing -- whereas "resume" should always come before "résumé" (with accents) in English dictionaries. What bi-level lexicographic sorting means is that you can stipulate that two letters like e (no accent) and e-acute ("é") generally count as the same letter (so that they both sort before "reward"), but that when theres a tie based on comparison that way (like the tie between "resume" and "résumé" (with accents)), the tie is broken by a stipulation that at a second level, e (no accent) does come before e-acute ("é"). (Some systems of sort order description allow for any number of levels in sort orders -- but I cant imagine a case where this gets you anything over a two-level sort.) Moreover, the units of sorting for a writing system may not be characters exactly. In some forms of Spanish, ch, while two characters, counts as one glyph -- a "letter" after c (at the first level, not just the second, like the e in the paragraph above). So "cuerno" comes before "chile". A character-based sort would not be able to see that "ch" should count as anything but "c" and "h". So this library doesnt assume that the units of comparison are necessarily individual characters..

Requirements: No special requirements
Platforms: Linux
Keyword: Arbbilex Ch Lexicographic Sorting Libraries Module Perl Module Programming Rsum Sort Sort Order Sortarbbilex Sorting
Users rating: 0/10

License: Freeware Size: 16.38 KB
USER REVIEWS
More Reviews or Write Review


SORT::ARBBILEX RELATED
Modules  -  Module Display Order Matches Sort Order in Admin 1.0
It's kind of confusing, and since in the case of the Order Total modules it actually determines the order in which order prices are calculated, this can be a pain in the neck. So I made a small tweak and now all modules in the Admin>Modules...
 
Libraries  -  Sort::Fields 0.90
Sort::Fields is a Perl module that can sort lines containing delimited fields. SYNOPSIS use Sort::Fields; @sorted = fieldsort [3, 2n], @lines; @sorted = fieldsort +, [-1, -3, 0], @lines; $sort_3_2n = make_fieldsort [3, 2n], @lines;...
5.12 KB  
Libraries  -  Tie::Hash::Sorted 0.10
Tie::Hash::Sorted Perl module presents hashes in sorted order. SYNOPSIS use Tie::Hash::Sorted; my %ages = ( John => 33, Jacob => 29, Jingle => 15, Heimer => 48, Smitz => 12, ); my $sort_by_numeric_value = sub { my $hash = shift; [...
8.19 KB  
Modules  -  CyberSource SOP Module 1.2
This module uses CyberSource's Silent Order POST method to connect. Basically it sends the transaction info to their server for processing using an HTTP Post.It's really simple to install and pretty user friendly. Hopefully it works for you as well.
 
Modules  -  Extraship 3.1
FEATURES - Enable/disable Extraship module - Sort order - Handling fee for this shipping package - Covered LOCAL COUNTRY and INTERNATIONAL COUNTRIES - Rate by Weight and Postcode (for local country) or Country Iso Code 2 (for international...
 
Modules  -  Views Alpha Pager 1.0
This module relies upon a reasonable alpha sort order defined in the view. When one is not defined, it reverts to the numeric pager. Installation - Unpack in your modules folder (usually /sites/all/modules/) and enable under Administer > Site...
 
Modules  -  Display Price in Default Currency 1.0
The module will display an addtional order total field during the final checkout stage (checkout_confirmation) in the shops default currency if the orders currency is not the same as the shops default currency.
 
Modules  -  Inline References 6.x-1.x-de
This module leverages Popups API in order to provide a form of inline editing for nodereferences on a CCK edit page. It also shows the referenced node's field data in addition to the title [nid: ] info normally displayed. The module also provides...
10 KB  
Libraries  -  Alien Perl module 0.91
Alien Perl module package contains external libraries wrapped up for your viewing pleasure! SYNOPSIS perldoc Alien; Alien is a package that exists just to hold together an idea, the idea of Alien:: packages, so there is no code here, just...
10.24 KB  
Libraries  -  FFI::Library 1.02
FFI::Library is a module with Perl Access to Dynamically Loaded Libraries. SYNOPSIS use FFI::Library; $lib = FFI::Library->new("mylib"); $fn = $lib->function("fn", "signature"); $ret = $fn->(...); This module provides access from Perl to...
16.38 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  Math::GMPf 0.29
Math::GMPf - perl interface to the GMP library's floating point (mpf) functions.
30.72 KB  
Programming  -  Net::Wire10 1.08
Net::Wire10 is a Pure Perl connector that talks to Sphinx, MySQL and Drizzle servers. Net::Wire10 implements the low-level network protocol, alias the MySQL wire protocol version 10, necessary for talking to one of the aforementioned...
30.72 KB  
Programming  -  logilab-common 0.56.2
a bunch of modules providing low level functionnalities shared among some python projects devel Please note that some of the modules have some extra dependencies. For instance, logilab.common.db will require a db-api 2.0 compliant...
174.08 KB  
Programming  -  OpenSSL for linux 1.0.0a
The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a...
3.83 MB  
Libraries  -  wolfSSL 4.0.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
3.88 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB