MooseX-Attribute-ENV This is a L attribute trait that you use when you want the default value for an attribute to be populated from the %ENV hash. So, for example if you have set the environment variable MYAPP_MYCLASS_USERNAME = 'John' you can do: package MyApp::MyClass; use Moose; use MooseX::Attribute::ENV; has 'username' => (is=>'ro', traits=>['ENV']); package main; my $myclass = MyApp::MyClass->new(); print $myclass->username; # STDOUT => 'John'; This is basically similar functionality to something like: has 'attr' => ( is=>'ro', default=> sub { $ENV{uc __PACKAGE_.'attr'}; }, ); but this module has a few other features that offer merit, as well as being a simple enough attribute trait that I hope it can serve as a learning tool. INSTALLATION To install this module, run the following commands: perl Makefile.PL make make test make install SUPPORT AND DOCUMENTATION After installing, you can find documentation for this module with the perldoc command. perldoc MooseX-Attribute-ENV You can also look for information at: RT, CPAN's request tracker http://rt.cpan.org/NoAuth/Bugs.html?Dist=MooseX-Attribute-ENV AnnoCPAN, Annotated CPAN documentation http://annocpan.org/dist/MooseX-Attribute-ENV CPAN Ratings http://cpanratings.perl.org/d/MooseX-Attribute-ENV Search CPAN http://search.cpan.org/dist/MooseX-Attribute-ENV COPYRIGHT AND LICENCE Copyright (C) 2008 John Napiorkowski This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.