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.441.896 Times

Carp::Datum 0.1.3

  Date Added: June 25, 2010  |  Visits: 808

Carp::Datum

Report Broken Link
Printer Friendly Version


Product Homepage
Download (91 downloads)



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 > $b, "ordering a > b preserved"; my $result = $b - $a; DENSURE $result < 0; return DVAL $result; } # Tracing DTRACE "this is a debug message"; DTRACE TRC_NOTICE, "note: a = ", $a, " is positive"; DTRACE {-level => TRC_NOTICE, -marker => "!!"}, "note with marker"; # Returning return DVAL $scalar; # single value return DARY @list; # list of values # In applications main use Carp::Datum qw(:all on); # turns Datum "on" or "off" DLOAD_CONFIG(-file => "debug.cf", -config => "config string"); The Carp::Datum module brings powerful debugging and tracing features to development code: automatic flow tracing, returned value tracing, assertions, and debugging traces. Its various functions may be customized dynamically (i.e. at run time) via a configuration language allowing selective activation on a routine, file, or object type basis. See Carp::Datum::Cfg for configuration defails. Carp::Datum traces are implemented on top of Log::Agent and go to its debugging channel. This lets the application have full control of the final destination of the debugging information (logfile, syslog, etc...). Carp::Datum can be globally turned on or off by the application. It is off by default, which means no control flow tracing (routine entry and exit), and no returned value tracing. However, assertions are still fully monitored, and the DTRACE calls are redirected to Log::Agent. The C version of Carp::Datum is implemented with macros, which may be redefined to nothing to remove all assertions in the released code. The Perl version cannot be handled that way, but comes with a Carp::Datum::Strip module that will lexically remove all the assertions, leaving only DTRACE calls. Modules using Carp::Datum can make use of Carp::Datum::MakeMaker in their Makefile.PL to request stripping at build time. See Carp::Datum::MakeMaker for instructions. Here is a small example showing what traces look like, and what happens by default on assertion failure. Since Log::Agent is not being customized, the debugging channel is STDERR. In real life, one would probably customize Log::Agent with a file driver, and redirect the debug channel to a file separate from both STDOUT and STDERR..

Requirements: No special requirements
Platforms: Linux
Keyword: Carpdatum Debugging Dtrace Libraries Module Perl Perl Module Programming Tracing Used
Users rating: 0/10

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


CARP::DATUM RELATED
Libraries  -  Devel::TraceMethods 1.00
Devel::TraceMethods is a Perl module for tracing module calls. SYNOPSIS use Devel::TraceMethods qw( PackageOne PackageTwo ); Devel::TraceMethods allows you to attach a logging subroutine of your choosing to all of the methods and functions...
5.12 KB  
File Management  -  Simple File Splitter/Combiner module 1.3
This module can be used to split any file, text or binary to equal sized chunks. It can also combine the chunks back to recreate the original file.<s. It canOften we need to split big files into many chunks either for saving them to disks,...
 
Security  -  Perl MD5 Login 0.31
Perl MD5 Login is a Perl CGI JavaScript framework  used for implementing a MD5 based encryption secure login on both client and server machines. The password is never stored or transmitted as plain text. Also encrypts cookies to maintain sessions.
 
Modules  -  Moneybooker / Paypal Donation Module 1.0
Moneybooker/Paypal Donation Module is the used for website donation using Paypal as well as Moneybooker.List of features available are listed below:- Donation using Paypal.- Donation using MoneyBooker.- Enter Donation Amount- Enter success url and...
10 KB  
Web Hosting  -  PyHP .0-alpha2 1.0
PyHP consists in an Apache module called mod_pyhp, used to preprocess scripts written in Python programming language. PyHP mixes the power and flexibility of Python with the style and “ease of use” of PHP in the generation of dynamic web...
 
Modules  -  Sage Pay Server Integration for Ubercart 6.x-1.4
This module can be used to integrate Ubercart with v2.23 of the Sagepay Server Protocol. Use this module if you want to use the Sagepay Server integration method with Ubercart.At present this module is new and relatively untested, use on...
10 KB  
Modules  -  Simplify Node Add 6.x-1.5
This module can be used for simplifying the forms used to add and edit nodes. With this module you can define which fields to show to a user.Newly added is the hook you can use to custom add fields that this module uses. You can use...
10 KB  
Modules  -  PBCore 6.x-1.0-beta3
While lacking an Admin UI, this module is now used at multiple locations in production environments. Craig Sinclair (Amherst Community Media) created a screencast that shows how to configure the PBCore module for Drupal to display customized...
10 KB  
Modules  -  Social Actions 6.x-1.2-beta1
The Social Actions module can be used to retrieve information from the Social Action's website, through their API and incorporate it into your site.
10 KB  
Modules  -  Domain Access Advanced 6.x-1.0-rc3
This an extension to the Domain Access module which is used to create many domains from a single installation.For what I see as a problem is that the domain module uses the node access api's to determine which nodes are displayed on which site....
10 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