Berkeley CSUA MOTD:Entry 10121
Berkeley CSUA MOTD
 
WIKI | FAQ | Tech FAQ
http://csua.com/feed/
2025/07/09 [General] UID:1000 Activity:popular
7/9     

2003/9/9 [Computer/SW/Languages/Perl] UID:10121 Activity:high
9/8     Any recommendations for a text-based Yahoo instant messanger app
        for linux that logs.
        \_ Yahoo::Messenger
           \_ what do you mean, there isn't a CPAN module by that name.
              \_ Sorry, Net::YahooMessenger, but really, you could have
                 tried searching.
                 \_ I did search for "Yahoo" at the CPAN list:
                    http://www.cpan.org/modules/00modlist.long.html
                    Why isn't that module listed there? BTW, I'm looking
                    for an application, not a library.
                    \_ Luke!  Use the source!  *WRITE* an application!  You
                       have the power within you!  Feel it!  Reach out to it!
                       Close your eyes, unload the IDE, and just *feel* the
                       code!
2025/07/09 [General] UID:1000 Activity:popular
7/9     

You may also be interested in these entries...
2008/3/4-7 [Computer/Networking, Computer/SW/Languages/Perl] UID:49324 Activity:moderate
3/4     Does anybody have some code or know of a program that will take a
        network/mask and return the list of address in that CIDR block?
        e.g. "iplist 10.10.10.0/24" and return 10.10.10.0 ... 10.10.10.255
        [I have a way to do this, but it involves distributing a large
        amount of code, which is kind of a hassle. Looking for something
        lightweight and either standard or easdy to rpm/port/yum install.]
	...
2007/9/10 [Computer/SW/Languages/Perl] UID:47986 Activity:low
9/10    Hi.  I'm running a package based linux distro.  Should
        I install perl CPAN modules through the provided packages,
        or through sudo cpan> install modulename etc ?
        Opinions?
        \_ Depends on the package system you're using, you may have to
           deal with both.  I had an experience where I installed via
	...
2007/8/7-13 [Computer/SW/Languages/Perl, Computer/SW/Unix] UID:47555 Activity:nil
8/7     I'm trying to figure out whether it's possible for get wget to
        authenticate to a web page protected by a login form ('post'
        method to send username/pass, and cookies.)  Cookies don't seem
        to be the problem, with --save-cookies and --keep-session-cookies
        but getting the username/password submitted isn't doing it.  On
        this particular page, getting to a link, let's say 'example.aspx',
	...
2006/6/29-7/3 [Computer/SW/Languages/Perl] UID:43527 Activity:nil
6/29    Visual Programming in Perl:
        http://search.cpan.org/dist/Acme-EyeDrops/lib/Acme/EyeDrops.pm
	...
2005/9/2-3 [Computer/SW/Languages/Perl] UID:39466 Activity:nil
9/2     Hey motd I used to have perl w/DBI 1.42 & DBD 2.9003. After
        upgrading Perl, DBI 1.48, & DBD 3.0002_1 I'm seeing something
        really weird. The following used to work:
        $dbh=$DBI->prepare("INSERT INTO data VALUES(\?)");
        for ($i=0; $i<10; $i++) {
          if (!$dbh->execute($i)) {
	...
2005/8/31 [Computer/SW/Languages/Perl] UID:39376 Activity:nil
8/31    Looking for an XML parser for Perl, preferably one that
        doesn't require installation (something already built in).
        If it's not already built in, I prefer something that doesn't
        require C compilation, and that I can just stick the *.pm
        to use. I'm looking for portability, not performance. Thanks.
        \_ What's wrong with using CPAN?
	...
2004/4/10-12 [Computer/SW/Languages/Perl] UID:13128 Activity:nil
4/10    In perl, how do I get time precise to the milisecond? The CPAN module
        requires recompilation and root access to install it, I'm looking for
        something more portable. Thanks!
        \_ If you need to know the time, there's no portable way to do it
           without modules.  However, if you just want a sub-second delay,
           you can do it with select -- for example, select "", "", "", 0.1;
	...
2004/4/12 [Computer/SW/Languages/Perl] UID:13154 Activity:nil
4/12    What's a good perl module (cpan) that strips off all the html
        tags and javascript crap? And perhaps be smart enough to strip
        off menus and ads? Thanks.
        \_ lynx -dump <pagename>
        \_ s/<[^>]*>//g
	...
2004/3/29-30 [Computer/SW/OS/FreeBSD, Computer/SW/OS/OsX] UID:12920 Activity:high
3/29    I'm installing binaries for both OsX and Linux and I'd like all the
        users to have /usr/bin/<files> to be accessible. I thought about
        /usr/bin/<files> for generic stuff (like scripts) and
        /usr/bin/<platform>/<files> for platform specific things.
        What is the correct approach to this?
        \_ there are obviously several ways to do this, and "correct" is mostly
	...
2004/3/30 [Computer/SW/OS/FreeBSD, Computer/SW/OS/OsX] UID:29888 Activity:high
3/29      I'm installing binaries for both OsX and Linux and I'd like all the
          users to have /usr/bin/<files> to be accessible. I thought about
          /usr/bin/<files> for generic stuff (like scripts) and
          /usr/bin/<platform>/<files> for platform specific things.
          What is the correct approach to this?
        \_ there are obviously several ways to do this, and "correct" is mostly
	...
2003/8/29-2004/2/14 [Computer/SW/Languages/Perl, Computer/SW/Unix] UID:12252 Activity:nil
2/13    Does perl have a "diff" facility? I have something that requires a
        lot of diff but file I/O using unix diff would be too slow. Thanks.
        \_ Text::Diff?  Really.  You could search cpan for this sort of thing.
	...
2003/7/23-24 [Computer/SW/Languages/Perl] UID:29108 Activity:high
7/22    Please rate the following languages by their usefulness for
        large programming projects and give your reasons:
        perl, python, ruby, tcl, urdu
        \_ Bangla >> Urdu
        \_ ocaml! -- ilyas
        \_ Don't use tcl.  tk was a cool idea but tcl is just cumbersome to
	...
Cache (8192 bytes)
www.cpan.org/modules/00modlist.long.html
The Perl 4 concept of packages has been extended in Perl 5 and a new standardised form of reusable software component has been defined: the Module. Perl 5 Modules typically conform to certain guidelines which make them easier to use, reuse, integrate and extend. This list has two key aims: FOR DEVELOPERS: To change duplication of effort into cooperation. FOR USERS: To quickly locate existing software which can be reused. This list includes the Perl 5 standard modules, other completed modules, work-in-progress modules and would-be-nice-to-have ideas for modules. It also includes guidelines for those wishing to create new modules including how to name them. Most, but not all, of the modules can be found within CPAN, the Comprehensive Perl Archive Network of mirrored FTP sites. Within the CPAN scheme the modules described in this list can be found in the modules/ directory below the CPAN root directory. Since PAUSE held a database of module information which could be maintained by module authors it made sense for the module listing part of the Module List to be built from that database. In April 1996 Andreas took over the automatic posting of the Module List and I now maintain the other parts of the text. Part 1 - Modules: Creation, Use and Abuse 1 Perl 5 Module Terminology Perl 5 implements a class using a package, but the presence of a package doesnt imply the presence of a class. A class is a package that provides subroutines that can be used as methods. A method is just a subroutine that expects, as its first argument, either the name of a package for static methods, or a reference to something for virtual methods. If so, please try to reuse the existing modules either in whole or by inheriting useful features into a new class. If this is not practical try to get together with the module authors to work on extending or enhancing the functionality of the existing modules. A perfect example is the plethora of packages in perl4 for dealing with command line options. If you are writing a module to expand an already existing set of modules, please coordinate with the author of the package. It helps if you follow the same naming scheme and module interaction scheme as the original author. Many people evolve their style over several years as they learn what helps them write and maintain good code. Heres one set of assorted suggestions that seem to be widely used by experienced developers: Use underscores to separate words. It is generally easier to read $var_names_like_this than $VarNamesLikeThis, especially for non-native speakers of English. Its also a simple rule that works consistently with VAR_NAMES_LIKE_THIS. Perl informally reserves lowercase module names for pragma modules like integer and strict. Other modules normally begin with a capital letter and use mixed case with no underscores need to be short and portable. You may find it helpful to use letter case to indicate the scope or nature of a variable. For example: $ALL_CAPS_HERE constants only beware clashes with perl vars $Some_Caps_Here package-wide global/static $no_caps_here function scope my or local variables Function and method names seem to work best as all lowercase. Second, if it does fail, you get a better diagnostic than just the undefinedness of the return value. In fact, the exception it throws may be quite rich in stacked error messages, if its rethrowing an exception caught further in. And you can always catch the exception if it does happen using eval . If, on the other hand, you expect your constructor to fail a goodly part of the time, then you shouldnt use exceptions, but you should document the interface so that people will know to check the return value. You dont need to use defined, since a constructor would only return a true reference or a false undef. So good Perl style for checking a return value would simply say $conn new Connection $addr or die Couldnt create Connection; In general, make as many things meaningful in a Boolean context as you can. Just write if do_your_thing Perl is designed to help you eschew obfuscation, if thats your thing. If you insist on a name that we consider inappropriate, we wont prevent you from uploading your module - but itll remain in your author directory and wont be directly visible from CPAN/modules/by-module. We appreciate the efforts of the contributors who have helped make the CPAN the worlds largest reusable code repository. Please help us enhance it by working with us to choose the best name possible. If you are developing a suite of related modules/classes its good practice to use nested classes with a common prefix as this will avoid namespace clashes. If adding a new module to a set, follow the original authors standards for naming modules and the interface to methods in those modules. If developing modules for private internal or project specific use, that will never be released to the public, then you should ensure that their names will not clash with any future public module. You can do this either by using the reserved Local:: category or by using an underscore in the top level name like Foo_Corp::. To be portable each component of a module name should be limited to 11 characters. If it might be used on DOS then try to ensure each is unique in the first 8 characters. In these cases the application could invoked as: 5 Namespace Coordination The maintainers of the module list are not the Internic for perl namespaces. They do neither sell namespaces nor can they establish property rights. What they try to do is to minimize namespace clashes and maximize usablility of the CPAN archive by setting up a catalogue of modules and control the indexers. Time permitting, they will also try to give advice for what they think is a proper usage of the namespace. It is an important part of the namespace concept that the module list maintainers do not guarantee to you that somebody else wont use the, say, Foo::Bar namespace. Instead, there are several levels of protection for your namespaces: a The most important is the module list which actually lists and proclaims your namespace. A namespace Foo:: is just a package name and its relationship to a namespace Foo::Bar:: is not predetermined whatsoever. The two namespaces can be closely or loosely related or not related at all, but whats most important, they can be writen by different authors who may work rather independently from each other. So if you have registered any namespace, it does not mean that you own the whole namespace tree that starts there. If you are registered as the contact for Foo::Bar, you are not necessarily also associated with Foo::Bar::Baz. For example: DBI:: under the control of Tim Bunce Sun:: under the control of Sun Microsystems Part 2 - The Perl 5 Module List The remainder of this document is divided up into sections. Each section deals with a particular topic and lists all known modules related to that topic. Modules are only listed in one section so check all sections that might related to your particular needs. All the information corresponds to the latest updates we have received. We dont record the version number or release dates of the listed Modules. Most Modules are nested in categories such as IPC::Open2 and IPC::Open3. These are shown as IPC:: on one line then each module listed below with a :: prefix. Ideas For Adoption Modules listed as in the i Development Stage with no contact reference are ideas without an owner. Feel free to adopt these but please let me know so that we can update the list and thus inform anyone else who might be interested. Adoption simply means that you either hope to implement the module one day or would like to cooperate with anyone else who might be interested in implementing it. Cooperation Similarly, if an idea that interests you has been adopted by someone please contact them so you can share ideas. Just because an idea has been adopted does NOT imply that its going to be implemented. Just because a module is listed and being implemented does NOT mean itll get finished. Waiting silently in the hope that the Module will appear one day is unlikely to be fruitful! If youre interested in a module dont just wait ...