The Readonly module (q.v.) is an effective way to create non-modifiable
variables. However, it's relatively slow.
.
The reason it's slow is that is implements the read-only-ness of variables via
tied objects. This mechanism is inherently slow. Perl simply has to do a lot
of work under the hood to make tied variables work.
.
This module corrects the speed problem, at least with respect to scalar
variables. When Readonly::XS is installed, Readonly uses it to access the
internals of scalar variables. Instead of creating a scalar variable object
and tying it, Readonly simply flips the SvREADONLY bit in the scalar's FLAGS
structure.
Installed Size: 34.8 kB
Architectures: amd64 arm64