Lexical
Devel::FindGlobals is a Perl module to find global variables and their size. SYNOPSIS use Devel::FindGlobals; print print_globals_sizes(); This module just runs around and over the symbol table, finds global variables, gets their sizes with Devel::Size, and then prints them out....
Platforms: *nix
License: Freeware | Size: 3.07 KB | Download (88): Devel::FindGlobals Download |
Object::LocalVars is a Perl module with outside-in objects with local aliasing of $self and object variables. SYNOPSIS package My::Object; use strict; use Object::LocalVars; give_methods our $self; # this exact line is required our $field1 : Prop; our $field2 : Prop; sub as_string :...
Platforms: *nix
License: Freeware | Size: 40.96 KB | Download (94): Object::LocalVars Download |
File::pushd is a Perl module to change directory temporarily for a limited scope. SYNOPSIS use File::pushd; chdir $ENV{HOME}; # change directory again for a limited scope { my $dir = pushd( /tmp ); # working directory changed to /tmp } # working directory has reverted to $ENV{HOME}...
Platforms: *nix
License: Freeware | Size: 15.36 KB | Download (100): File::pushd Download |
Perl6::Currying is a Perl 6 subroutine currying for Perl 5. SYNOPSIS use Perl6::Currying; sub add ($a,$b) { $a + $b } # Define a sub with named params print add(1,2); # Call it my $incr = &add.prebind(a=>1); # Bind the $a argument to 1 # to create an increment subroutine print...
Platforms: *nix
License: Freeware | Size: 5.12 KB | Download (89): Perl6::Currying Download |
String::RexxParse is a Perl implementation of REXX parse command. SYNOPSIS use String::RexxParse qw(parse); parse $source, q! $var1 $var2 ( $var3 ) $var4 ($var5) $var6 !; or use String::PexxParse; $parse = String::RexxParse->new(q! $var1 $var2 ( $var3 ) $var4 ($var5) $var6 !);...
Platforms: *nix
License: Freeware | Size: 9.22 KB | Download (109): String::RexxParse Download |
Carp::Datum is a Perl module used for debugging and tracing. SYNOPSIS # In modules use Carp::Datum; # Programming by contract sub routine { DFEATURE my $f_, "optional message"; # $f_ is a lexical lvalue here my ($a, $b) = @_; DREQUIRE $a > $b, "a > b"; $a += 1; $b += 1; DASSERT $a >...
Platforms: *nix
License: Freeware | Size: 38.91 KB | Download (91): Carp::Datum Download |
Class::InsideOut::Manual::About is a guide to this and other implementations of the inside-out technique. This manual provides an overview of the inside-out technique and its application within Class::InsideOut and other modules. It also provides a list of references for further study....
Platforms: *nix
License: Freeware | Size: 48.13 KB | Download (109): Class::InsideOut::Manual::About Download |
PyBison is a Python binding to the Bison (yacc) and Flex (lex) parser-generator utilities. It allows parsers to be quickly and easily developed as Python class declarations, and for these parsers to take advantage of the fast and powerful C-based Bison/Flex. Users write a subclass of a basic...
Platforms: *nix
License: Freeware | Size: 112.64 KB | Download (125): PyBison Download |
Parse::Nibbler is Perl module to parse huge files using grammars written in pure perl. Create a parser object using the ->new method. This method is provided by the Parse::Nibbler module and should not be overridden. The main functionality of the Parse::Nibbler module is the Register...
Platforms: *nix
License: Freeware | Size: 33.79 KB | Download (91): Parse::Nibbler Download |
Common Text Transformation Library, CTTL for short, is a set of C++ classes and functions to understand and modify text data. Common Text Transformation Library implementation is based on STL classes and algorithms. Concept of a substring plays major role in design of the text transformation...
Platforms: *nix
License: Freeware | Size: 163.84 KB | Download (100): Common Text Transformation Library Download |
TagSoup is a SAX2 parser written in Java that, instead of parsing well-formed or valid XML. Tag Soup parses HTML as it is found in the wild: nasty and brutish, though quite often far from short. By providing a SAX interface, it allows standard XML tools to be applied to even the worst HTML. It...
Platforms: *nix
License: Freeware | Size: 51.2 KB | Download (101): Tag Soup Download |
fields::aliased is a Perl module that can create aliases for object fields. SYNOPSIS package MyPackage; use strict; use fields qw($scalar @array %hash); sub new { my $class = shift; my $self = fields::new($class); return $self; } sub mymethod { my MyPackage $self = shift; use...
Platforms: *nix
License: Freeware | Size: 8.19 KB | Download (90): fields::aliased Download |
Emacs Common Lisp is an implementation of Common Lisp, written in Emacs Lisp. It does not yet purport to conform to the ANSI standard since, among other things, CLOS, and pretty printing are missing. However, most other Common Lisp features like lexical closures, packages, readtables, multiple...
Platforms: *nix
License: Freeware | Size: 184.32 KB | Download (120): Emacs Common Lisp Download |
Dragon is a powerful parser generator. It produces a consequent, object-oriented, integrated scanner and parser solution. Dragon parser generator also scales for very large grammar defintions. Since dragon parses LR(1) grammars, the generation algorithm is quite CPU intensive. Using LR(1)...
Platforms: *nix
License: Freeware | Size: 368.64 KB | Download (242): Dragon parser generator Download |
Net::DAAP::Client is a client for Apple iTunes DAAP service. SYNOPSIS my $daap; # see WARNING below $daap = Net::DAAP::Client->new(SERVER_HOST => $hostname, SERVER_PORT => $portnum, PASSWORD => $password); $dsn = $daap->connect; $dbs_hash = $daap->databases; $current_db = $daap->db;...
Platforms: *nix
License: Freeware | Size: 12.29 KB | Download (106): Net::DAAP::Client Download |
Encode::PerlIO is a detailed document on Encode and PerlIO. Overview It is very common to want to do encoding transformations when reading or writing files, network connections, pipes etc. If Perl is configured to use the new perlio IO system then Encode provides a "layer" (see PerlIO) which...
Platforms: *nix
License: Freeware | Size: 11.3 MB | Download (87): Encode::PerlIO Download |
String::Tokenizer is a simple string tokenizer. SYNOPSIS use String::Tokenizer; # create the tokenizer and tokenize input my $tokenizer = String::Tokenizer->new("((5+5) * 10)", +*()); # create tokenizer my $tokenizer = String::Tokenizer->new(); # ... then tokenize the string...
Platforms: *nix
License: Freeware | Size: 8.19 KB | Download (95): String::Tokenizer Download |
B::TerseSize is a Perl module that prints information about ops and their (estimated) size. SYNOPSIS perl -MO=TerseSize[,OPTIONS] foo.pl The B::Size and B::TerseSize modules attempt to measure the size of Perl op codes. The output of B::TerseSize is similar to that of B::Terse, but includes...
Platforms: *nix
License: Freeware | Size: 10.24 KB | Download (101): B::TerseSize Download |
LLg is a recursive descent parser generator. SYNOPSIS use LLg; @tokens = ( ADDOP => [-+], LEFTP => [(], RIGHTP => [)], INTEGER => 0|[1-9][0-9]*, ); $reader = Lex->new(@tokens); $ADDOP->debug; $expr = And->new(($factor, Any->new($ADDOP, $factor)), sub { shift(@_); my $result =...
Platforms: *nix
License: Freeware | Size: 20.48 KB | Download (93): LLg 1.07 Download |
ImplicitThis is a syntactical sugar for OO methods. SYNOPSIS use ImplicitThis; ImplicitThis::imply(); sub new { my $type = shift; my %args = @_; # must be blessed hash object bless { foo => $args{foo}, bar => $args{bar}, }, $type; } sub my_accessor { # $this is read for us. $bar...
Platforms: *nix
License: Freeware | Size: 4.1 KB | Download (87): ImplicitThis Download |