Perl::...VoidMap(3pm)

okay bestie, welcome to the manual page for Perl::...VoidMap(3pm) from User Contributed Perl Documentation ✨ this is the one about not using map in void contexts, and yes it’s giving β€œwhy are you like this” energy, but in a helpful way πŸ’…

✨ NAME ✨

Perl::Critic::Policy::BuiltinFunctions::ProhibitVoidMap β€” literally the policy that says don’t use map in void contexts 🫢

🫢 AFFILIATION 🫢

This Policy is part of the core Perl::Critic distribution, so it’s not some random side quest β€” it’s core, bestie πŸ’–

πŸ’… DESCRIPTION πŸ’…

okay so the whole point: map and grep are intended to be pure functions, not mutators. no cap. if you want to iterate with side-effects, then you should use a proper for or foreach loop. it’s giving β€œuse the right tool” energy 😭

here’s the vibe check in code:

grep{ print frobulate($_) } @list;           #not ok
print map{ frobulate($_) } @list;            #ok

grep{ $_ = lc $_ } @list;                    #not ok
for( @list ){ $_ = lc $_  };                 #ok

map{ push @frobbed, frobulate($_) } @list;   #not ok
@frobbed = map { frobulate($_) } @list;      #ok

πŸŽ€ CONFIGURATION πŸŽ€

This Policy is not configurable except for the standard options. that’s the whole config section, bestie β€” no secret knobs, no hidden sliders πŸŽ€

πŸ’– AUTHOR πŸ’–

Jeffrey Ryan Thalhammer <jeff@imaginative-software.com> β€” iconic, mwah πŸ’‹

Copyright (c) 2005-2011 Imaginative Software Systems. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license can be found in the LICENSE file included with this module.


byeee bestie 🫢 this was Perl::...VoidMap(3pm) from perl v5.42.0, dated 2024-10-23 β€” slay, protect your void contexts, and stay hydrated πŸ’–βœ¨

πŸ“¦ where this page comes from