• Home
  • Most Popular
  • Submit
  • About Us
  • Contact Us

Softpile

Free Downloads

Categories
  • Home
  • Most Popular
  • Communications
  • Desktop
  • Games & Entertainment
  • Graphic Apps
  • Network & Internet
  • Security & Privacy
  • System Utilities
Alternative to itextsharp 2022.11.10347
IronPDF offers an itextsharp alternative for HTML to PDF conversion with C# code examples, documentation, and ...
VShell Server for Linux and Mac 4.8
VShell is a versatile and secure file transfer server that supports multiple protocols and is compatible ...
PDF Studio PDF Editor for Linux 2022
PDF Studio is a cost-effective PDF editor that delivers full compatibility with the PDF Standard. It's ...
VQ Probe for Linux 1.5
VQ Probe is a comprehensive software tool that enables objective and subjective video quality analysis. The ...
Resilient Server 2.3
This Debian GNU/Linux (Buster) based software has a customized partitioning scheme that enhances robustness against filesystem ...
Valentina Studio for Linux 9.6
Valentina Studio is a cross-platform GUI manager for Mac, Windows, and Linux. It allows users to ...
VPN Lifeguard for Linux 1.0.58
The software monitors VPN connection and automatically terminates apps during connection loss, re-establishes the connection and ...
G_Viewer 0.84
G_Viewer is a Linux software that serves as both a file system and photo/image viewer. It ...
Checksome File Hash Tool for Linux 1.1
This software allows for the generation and verification of file hashes. It is a quick and ...
KeyWrangler Password Manager for Linux 1.2
A password management software that is secure, offline and extensible. It offers military-grade encryption to protect ...
Home Linux Devel::WarnGlobal Download

Devel::WarnGlobal

February 8, 2009
This Perl extension assists in removing global variables, allowing for better code organization and maintenance.
Version 0.05
License Perl Artistic License
Platform Linux
Supported Languages English
Homepage search.cpan.org
Developed by Stephen Nelson
Devel::WarnGlobal is a valuable Perl extension designed to simplify the debugging process of a program full of global variables. These variables come in various shapes and sizes, some of which are package variables exported by default, while others are accessed directly using the '$Modulename::Global' syntax. Experienced programmers acknowledge that using global variables can be a Bad Thing in large programs as they add to program complexity and can introduce subtle bugs.

Globals introduce complexity as they increase the number of things that one needs to keep in their head at a given time, causing confusion such as "What the heck is $FROBOZZ supposed to be again?" If one piece of code accidentally uses $THNEE = 34 instead of $THNEE == 34, then another piece of code miles distant could break, and one would have to hunt through the entire program for the bug, which can be time-consuming.

The standard remedy for rampant global variables is to write subroutines that return the information that the global is supposed to contain. Devel::WarnGlobal provides a more efficient way to manage these variables. Once the 'get' function is written, one can tie that variable to the function, and the variable will always return the value of the function. This feature can be useful while testing, as it serves to verify that the new 'get' function is correctly written.

Devel::WarnGlobal can provide warnings whenever the global is accessed, assisting in tracing down uses of the given global. These warnings are on by default, and one can turn them on and off with the warn() method on the tied object, ensuring that access controls can be put into set_clown() to make sure that get_clown() will always return a valid clown. If 'die_on_write' is set, Devel::WarnGlobal will die if an attempt is made to write to a value with no 'set' method defined.

As a convenience, Devel::WarnGlobal allows for the tying of variables in the 'use' line via Devel::WarnGlobal::Scalar. This extension provides an easy, efficient, and effective way to eliminate globals, making it a highly recommended tool to simplify the management of global variables.
What's New

Version 0.05: N/A

Free Download 5.2K
314
  • Share on:

Most Popular

  1. Quicksilver Forums 1.4.2
    157
  2. Dvgrab 3.4
    94
  3. DynVPN 1.0
    83
  4. CherryTV 0.1
    81
  5. SlideMap 1.2.2
    76
  6. porm r2
    72
  7. Clewarecontrol 0.8
    71
  8. Hills 2.0
    71
  9. fuseftp 0.8
    70
  10. Java Games 1.0
    70

Related Downloads

gaim-hotkeys
Gaim-hotkeys is a plugin for Gaim that enables users to assign shortcut ...
Ruby Datavision Bridge
Ruby Datavision Bridge is a tool that enables the use of Java ...
Miro
Miro (formerly known as Democracy Player) is a video playback software that ...
Whirlpinch
Whirlpinch is a software plug-in that merges the capabilities of the Whirl ...
jcpp
jcpp is a preprocessor software for Java language that processes C-style code ...
Image::Magick::Tiler
This software can slice any image into tiles of a specified size, ...
xurgency
Xurgency software notifies completion of processes like emerge, wget, or updatedb in ...
OO Text To Speech
OO Text To Speech is a macro that allows OpenOffice.org users to ...
Melys
Melys is an ALSA-based software tool that enables MIDI sequence production.
Cool Linux
Cool Linux CD is a bootable disc featuring Linux OS, a 2.4 ...
Copyright © 1999-2025 Softpile Free Downloads
  • Most Popular
  • Submit
  • About Us
  • Contact Us
  • Privacy Policy
  • Disclaimer
  • Terms of Use

Can we use your data to tailor ads for you?

Our partners will collect data and use cookies for ad personalization and measurement.

By choosing "I agree", closing this pop-up or clicking on any element on the page, you agree to the use of cookies to help us provide you with a better user experience.

Learn how Softpile and our partners collect and use data.

You can change your choice at any time in our privacy center.

Cookie Settings

Our website stores four types of cookies. At any time you can choose which cookies you accept and which you refuse. You can read more about what cookies are and what types of cookies we store in our Cookie Policy.

are necessary for technical reasons. Without them, this website may not function properly.

are necessary for specific functionality on the website. Without them, some features may be disabled.

allow us to analyse website use and to improve the visitor's experience.

allow us to personalise your experience and to send you relevant content and offers, on this website and other websites.