1
0
Fork 0
mirror of https://github.com/Perl/perl5.git synced 2026-03-07 02:40:39 +00:00
🐪 The Perl programming language
Find a file
2026-03-06 11:53:09 -06:00
.github update github irc notification action 2025-09-29 20:36:55 +02:00
amigaos4 Fix typos 2025-10-16 07:20:38 +02:00
cpan cpan/Compress-Raw-Zlib - Update to version 2.221 2026-02-27 10:18:33 -05:00
Cross Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
cygwin Use ck_warner() more 2025-03-20 15:20:56 +00:00
dist perlxstut.pod: Fix a path, simplify 2026-03-03 15:08:03 -05:00
ext XS::APItest: avoid setting ST(0) in void XSUBs 2026-02-27 10:17:32 +00:00
h2pl Switch most open() calls to three-argument form. 2016-12-23 13:52:28 -05:00
haiku Remove use of dVAR in core 2020-07-20 23:28:13 +01:00
hints Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
lib Split tests for B::Deparse refaliasing into two sections 2026-03-02 11:15:55 +00:00
os2 Use ck_warner() more 2025-03-20 15:20:56 +00:00
os390 Allow z/OS to work in either EBCDIC or ASCII mode 2025-09-17 14:34:41 -06:00
plan9 Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
pod perldelta for empty array field initializer fix 2026-03-03 07:36:35 +01:00
Porting Revert "version.pm's vutil.c has been customized in blead" 2026-03-05 22:28:13 +01:00
qnx style: Detabify indentation of the C code maintained by the core. 2021-01-17 09:18:15 -07:00
regen perlxs: Note documented a few symbols 2026-02-28 19:44:10 -07:00
t closepid.t: No list form of piped open on VMS 2026-03-06 11:53:09 -06:00
utils Remove period from end of abstract (subject) 2025-12-03 13:23:06 -05:00
vms Archive perldelta 5.43.8 2026-02-20 23:11:31 +00:00
vos
win32 Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
.dir-locals.el Fix Emacs dir-local variables 2015-12-07 20:13:08 +00:00
.editorconfig Set .editorconfig for .xs files and add modeline to APItest.xs 2025-09-23 13:43:47 +01:00
.git_patch Add describe (patchlevel) to .git_patch and read it from make_patchnum.pl 2025-02-10 10:09:59 +01:00
.gitattributes .gitattributes: *.inc recognized as Pawn 2025-10-08 17:57:38 -06:00
.gitignore Makefile.SH: Regen makedependfile when makedependfile.SH changed 2025-07-16 12:26:58 -06:00
.mailmap perlfunc: document return behavior of require and module_true feature 2025-12-16 12:08:12 +00:00
.metaconf-exclusions.txt Rely on C89 "const" 2018-11-27 11:43:22 +00:00
Artistic fix typo in Artistic 2018-05-07 17:44:02 +01:00
asan_ignore asan_ignore: Explicitly list ignored behavior fcns 2019-05-24 17:09:30 -06:00
AUTHORS Fix typos 2025-10-16 07:20:38 +02:00
autodoc.pl autodoc: Fix unescaped '#' warning 2026-02-21 15:05:26 -07:00
av.c Fix Perl_av_store off by one error in key comparison 2025-12-22 06:35:17 -07:00
av.h perlapi: newAV() fix typo 2025-09-18 22:49:10 -06:00
builtin.c Close padding hole in BuiltinFuncDescriptor 2026-02-08 13:10:24 +00:00
caretx.c Convert RT ticket reference to GH 2025-07-28 19:54:24 -04:00
cflags.SH cflags.SH: Turn off attribute_nonnull warnings 2026-02-07 12:27:24 -07:00
Changes Update documentation, comments, metadata to reference GitHub as canonical repository (#1186) 2019-10-20 18:47:10 +02:00
charclass_invlists.inc Add Unicode property for forbidden name characters 2026-01-29 14:46:49 -07:00
class.c class.c: allow array fields w/ empty initializer 2026-03-03 07:36:35 +01:00
CODE_OF_CONDUCT.md Add top-level Code of Conduct document 2021-08-17 09:09:19 -04:00
config_h.SH Add Configure probe for size of intmax_t 2026-01-29 13:20:28 -07:00
configpm remove indirect calls to import() method 2025-03-15 09:49:42 +01:00
Configure Re-order Configure after metaconfig backports 2026-02-12 13:54:05 +01:00
configure.com configure.com: remove DECC guards around stdlib.h 2026-01-30 06:23:15 -06:00
configure.gnu
cop.h Implement foreach \LEXICAL (...) without lvref magic 2026-03-02 11:15:55 +00:00
Copying Update copies of GPL to match recent FSF changes 2025-05-02 23:35:09 +02:00
cv.h Convert _XPVCV_HEAD to legal name 2025-09-01 08:12:39 -06:00
deb.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
doio.c Win32: eliminate the sys_intern fdpid aka w32_fdpid 2026-02-09 09:29:49 +11:00
doop.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
dosish.h Employ PL_shutdownhook 2024-09-30 22:52:06 +02:00
dquote.c Stop calling Perl_*warn*() manually in core 2025-03-19 06:37:08 +01:00
dump.c op_dump(): display OTHER on newish LOGOPs 2026-02-15 14:29:51 +00:00
ebcdic_tables.h regen/ebcdic.pl: Use INIT() for ebcdic_tables.h 2025-10-06 08:20:03 -06:00
embed.fnc embed.fnc: Update and clarify comments 2026-03-04 11:03:02 -07:00
embed.h regcomp.c: Add three (temporarily) unused arguments 2026-02-28 15:00:09 -07:00
embedvar.h regen/embed.pl: Update copyright to 2026 2026-01-05 13:30:18 -07:00
EXTERN.h Document things in EXTERN.h, INTERN.h 2025-09-28 11:09:26 -06:00
fakesdio.h fakesdio.h: Use legal macro name 2025-10-14 09:37:20 -06:00
feature.h Implement PPC 0026: Enhanced qr//xx 2026-02-28 15:00:09 -07:00
form.h
generate_uudmap.c style: Detabify indentation of the C code maintained by the core. 2021-01-17 09:18:15 -07:00
globals.c If we have thread local storage, use it instead of posix_getspecific(). 2021-09-07 15:46:16 +10:00
globvar.sym remove unused PL_no_mem symbol 2023-12-13 07:07:29 +01:00
gv.c Remove PERL_CREATE_GVSV 2026-02-16 15:45:36 +01:00
gv.h Remove PERL_CREATE_GVSV 2026-02-16 15:45:36 +01:00
handy.h Add internal only macros isEVEN, isODD 2026-02-26 11:11:48 -07:00
hv.c perlapi: Combine hv_iternext(_flags)? entries 2026-03-01 12:27:33 -07:00
hv.h perlintern: Combine hv_refcounted_new entries 2026-01-28 07:04:03 -07:00
hv_func.h Standardize .h recursive #include guard names 2026-01-22 07:21:21 -07:00
hv_macro.h Standardize .h recursive #include guard names 2026-01-22 07:21:21 -07:00
inline.h rpp_pop_1_norc: Add missing statement terminator 2026-03-03 09:57:02 -07:00
INSTALL Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
install_lib.pl Remove DOS/DJGPP support 2021-11-02 18:01:42 +00:00
installhtml installhtml: use warnings rather than -w 2025-12-24 13:11:24 +00:00
installman Remove AT&T UWIN support 2021-11-02 18:01:42 +00:00
installperl Restructure handling extra statbuf flags on z/OS 2025-09-17 14:34:41 -06:00
INTERN.h Document things in EXTERN.h, INTERN.h 2025-09-28 11:09:26 -06:00
intrpvar.h perlapi: Use new 'apidoc_flag' lines 2026-01-27 08:04:53 -07:00
invlist_inline.h remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
iperlsys.h Restructure handling extra statbuf flags on z/OS 2025-09-17 14:34:41 -06:00
keywords.c [regen/keywords] Order keywords alphabetically 2025-09-22 11:29:16 +02:00
keywords.h [regen/keywords] Order keywords alphabetically 2025-09-22 11:29:16 +02:00
l1_char_class_tab.h Add class for underscore character to l1_char_class_tab.h 2026-01-15 08:47:33 -07:00
locale.c locale.c: spelling correction 2026-02-05 22:34:55 -05:00
locale_table.h regen/locale.pl: Use 'USE_LOCALE" not 'NO_LOCALE' 2025-07-22 09:52:18 -06:00
long_names.c Remove PERL_CREATE_GVSV 2026-02-16 15:45:36 +01:00
make_ext.pl make_ext.pl: eliminate goto-into-block construct 2026-01-30 17:25:50 +01:00
make_patchnum.pl Add describe (patchlevel) to .git_patch and read it from make_patchnum.pl 2025-02-10 10:09:59 +01:00
makedef.pl makedef.pl: Eliminate need for embed.fnc sync 2025-10-21 18:58:48 -06:00
makedepend.SH WIP: Run makedepend in parallel by using make 2021-08-11 10:01:16 -06:00
makedependfile.SH makedepend_file.SH: Add some sed edits for z/OS 2025-09-15 18:13:40 -06:00
Makefile.SH Archive perldelta 5.43.8 2026-02-20 23:11:31 +00:00
malloc.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
malloc_ctl.h Use new paradigm for hdr file double inclusion guard 2017-06-02 12:47:18 -06:00
MANIFEST cpan/CPAN-Meta-Requirements - Update to version 2.145 2026-02-22 19:03:39 -05:00
mathoms.c mathoms.c: Update comment 2026-02-01 09:22:52 -07:00
META.json cpan/CPAN-Meta: Update to CPAN version 2.150013 2026-02-22 18:52:55 -05:00
META.yml cpan/CPAN-Meta: Update to CPAN version 2.150013 2026-02-22 18:52:55 -05:00
metaconfig.h Use getentropy() for seeding PRNG in Perl_seed() 2026-01-23 11:03:16 -07:00
metaconfig.SH Fix typos 2020-10-03 10:40:40 -04:00
mg.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
mg.h Nuke the MGf_PERSIST flag, freeing a bit in ->mg_flags 2025-03-31 12:44:36 +01:00
mg_names.inc fix incorrect vi filetype declarations in generated files 2023-03-24 06:10:05 +08:00
mg_raw.h fix incorrect vi filetype declarations in generated files 2023-03-24 06:10:05 +08:00
mg_vtable.h mg_vtable, Use INIT() for PL_magic_vtable_names 2025-10-06 08:20:03 -06:00
miniperlmain.c update PL_main_thread on fork() 2025-08-07 14:12:56 +10:00
mkppport Add perl shebang to mkppport 2022-09-05 20:39:49 +02:00
mkppport.lst mkppport.lst - add dist/ packages that contain XS 2022-04-18 14:22:26 +08:00
mro_core.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
myconfig.SH myconfig.SH: remove leftover bincompat5005 entry 2020-08-10 23:08:53 +01:00
mydtrace.h rename and function-ise dtrace macros 2016-03-18 23:45:25 +00:00
nostdio.h nostdio.h: Properly indent #nested lines 2024-01-19 11:16:26 -07:00
numeric.c grok_uint_by_base: Avoid to-be-discarded work 2026-03-03 08:45:59 -07:00
op.c Implement foreach \LEXICAL (...) without lvref magic 2026-03-02 11:15:55 +00:00
op.h Close padding hole in op_multiparam_named_aux struct 2026-02-08 11:56:43 +00:00
op_reg_common.h op_reg_common.h: Remove temporary workaround 2026-02-28 10:24:03 -07:00
opcode.h add OPpSTATEMENT private flag for logops 2026-02-09 10:34:19 +00:00
opnames.h Create new OP_MULTIPARAM to implement subroutine signatures 2025-08-25 14:06:05 +01:00
overload.h Revert "switch removal: remove smartmatch" 2025-02-16 14:51:16 +01:00
overload.inc Revert "switch removal: remove smartmatch" 2025-02-16 14:51:16 +01:00
PACKAGING Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
packsizetables.inc remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
pad.c perlapi: Combine pad_add_name_pvs with similar entries 2026-03-03 08:45:17 -07:00
pad.h perlapi: Combine pad_add_name_pvs with similar entries 2026-03-03 08:45:17 -07:00
parser.h toke.c: Add parse_ident_msg() 2026-01-29 14:46:49 -07:00
patchlevel.h Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
peep.c rpeep(): remove spurious flag setting on LOGOPs 2026-02-15 14:29:51 +00:00
perl.c Remove PERL_CREATE_GVSV 2026-02-16 15:45:36 +01:00
perl.h Remove PERL_CREATE_GVSV 2026-02-16 15:45:36 +01:00
perl_inc_macro.h Standardize .h recursive #include guard names 2026-01-22 07:21:21 -07:00
perl_langinfo.h perl_langinfo.h: Fix to work on Android 2024-10-21 15:17:16 -06:00
perl_siphash.h perl_siphash.h - add documentation 2025-03-05 19:01:14 +01:00
perlapi.h Correct typos as per GH 20435 2022-12-29 09:39:58 -05:00
perldtrace.d Replace common Emacs file-local variables with dir-locals 2015-03-22 22:36:14 -04:00
perlio.c PerlIOScalar_write: fixed broken C++ compilation 2026-02-20 14:02:57 +00:00
perlio.h perlapi: PERLIO_FUNCS_CAST is not a typedef 2024-08-31 18:22:06 -06:00
perlio.sym Purge remaining references to PerlIO_sprintf and PerlIO_vsprintf(). 2013-10-07 10:32:39 +02:00
perliol.h Remove :win32 PerlIO layer 2021-06-28 08:47:57 -06:00
perlsdio.h Evict PERLIO_IS_STDIO from top-level core files. 2015-07-23 17:54:06 -05:00
perlstatic.h remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
perlvars.h perlapi: PL_check and PL_hexdigit are arrays not macros 2025-07-31 08:50:56 -06:00
perly.act add OPpSTATEMENT private flag for logops 2026-02-09 10:34:19 +00:00
perly.c parser debugging output: strip token name prefixes 2025-11-06 11:24:18 +00:00
perly.h add OPpSTATEMENT private flag for logops 2026-02-09 10:34:19 +00:00
perly.tab add OPpSTATEMENT private flag for logops 2026-02-09 10:34:19 +00:00
perly.y add OPpSTATEMENT private flag for logops 2026-02-09 10:34:19 +00:00
Policy_sh.SH
pp.c Use isEVEN, isODD 2026-03-01 12:24:39 -07:00
pp.h remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
pp_ctl.c Implement foreach \LEXICAL (...) without lvref magic 2026-03-02 11:15:55 +00:00
pp_hot.c Use isEVEN, isODD 2026-03-01 12:24:39 -07:00
pp_pack.c utf8_to_bytes: take U8 * directly, not char * 2026-02-08 05:06:03 +01:00
pp_proto.h Create new OP_MULTIPARAM to implement subroutine signatures 2025-08-25 14:06:05 +01:00
pp_sort.c perlapi: Combine sortsv(_flags)? entries; add detail 2026-01-29 13:15:01 -07:00
pp_sys.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
proto.h grok_uint_by_base: Change parameter name 2026-03-03 08:45:59 -07:00
README Bump copyright year 2026-02-01 19:16:30 +00:00
README.aix Update AIX README 2025-07-30 13:49:46 -06:00
README.amiga Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.android Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.bs2000 Don't try to link to INSTALL which is not linkable documentation 2025-04-18 15:30:10 +03:00
README.cn Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.cygwin README.cygwin: Note parallel compiling/testing is available 2022-11-29 13:07:01 -07:00
README.freebsd Replace FreeBSD URL's with new HTTPS ones 2023-01-11 12:08:10 -07:00
README.haiku Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
README.hpux Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.hurd Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.irix Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.jp Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.ko Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.linux Grammar and POD formatting corrections 2026-02-23 18:34:44 -05:00
README.macosx Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
README.openbsd Grammatical corrections 2025-12-07 21:29:40 -05:00
README.os2 Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
README.os390 Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.os400 Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.plan9 Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.qnx Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.riscos README.riscos: Improve the document 2024-04-03 17:19:58 -06:00
README.solaris Remove full stops from POD headings 2024-01-11 10:06:24 +00:00
README.synology Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.tru64 Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.tw Add vim-modeline to render files as POD 2022-09-05 20:39:49 +02:00
README.vms Bump the perl version in various places for 5.43.8 2026-02-20 23:18:11 +00:00
README.vos pods, comments: Fix up e.g. i.e. 2024-06-16 12:39:53 -06:00
README.win32 Note that Visual C++ 2026 is supported 2026-02-01 19:27:25 +00:00
reentr.c regen/reentr.pl: Update copyright year 2024-02-28 06:44:29 -07:00
reentr.h regen/reentr.pl: White-space, comment 2024-02-28 06:44:29 -07:00
regcharclass.h Add Unicode property for forbidden name characters 2026-01-29 14:46:49 -07:00
regcomp.c Implement PPC 0026: Enhanced qr//xx 2026-02-28 15:00:09 -07:00
regcomp.h Convert all core uses of _ASSERT__() to assert() 2025-09-03 19:46:22 -06:00
regcomp.sym regex engine: split EVAL_postponed_AB state 2025-12-02 20:55:28 +00:00
regcomp_debug.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
regcomp_internal.h remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
regcomp_invlist.c TO SQUASH - add a fudge factor 2026-02-12 21:51:57 +00:00
regcomp_study.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
regcomp_trie.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
regen.pl regen.pl: Add comment 2026-01-18 10:26:29 -07:00
regen_perly.pl regen_perly.pl: remove mostly dead gather_tokens code 2024-09-07 05:36:35 +02:00
regexec.c embed.fnc: Add re_intuit_start end string arg assert 2026-02-05 20:46:18 -07:00
regexp.h regex: eval/cut: fix premature local undo and $^R 2025-12-17 11:17:31 +00:00
regexp_constants.h Add Unicode property for forbidden name characters 2026-01-29 14:46:49 -07:00
reginline.h Dont call Perl_croak manually in core 2025-03-18 04:16:51 +01:00
regnodes.h regex engine: split EVAL_postponed_AB state 2025-12-02 20:55:28 +00:00
run.c Perl_runops_wrap((): don't mortalise NULLs 2023-08-16 17:17:00 +01:00
runtests.SH Enable z/OS to run with '-e' option for runtests 2022-01-01 18:11:47 -07:00
sbox32_hash.h sbox32_hash.h: Add #undef's 2026-01-22 09:55:58 -07:00
scope.c perlapi: MORTALDESCTRUCTOR_foo are macros 2026-02-01 10:10:31 -07:00
scope.h scope.h: Remove SAVELONG() expands to non-existent 2025-09-18 13:23:29 -06:00
scope_types.h regcomp: handle cloning the rexc cleanup in the scope stack 2025-04-19 17:25:53 +02:00
SECURITY.md security docs: update capitalization of PSC 2021-04-16 19:16:49 -04:00
sv.c perlapi: Clean up sv_streq() and sv_eq() entries 2026-03-03 08:46:19 -07:00
sv.h Rearrange SvFLAGS bits to make a spare one for scalars 2026-02-11 10:59:21 +00:00
sv_inline.h embed.fnc: mv definition of more_sv 2025-10-21 18:58:48 -06:00
taint.c Stop calling Perl_*warn*() manually in core 2025-03-19 06:37:08 +01:00
TestInit.pm allow some basic infrastructure to load with -Dusedefaultstrict 2024-01-04 14:24:53 +11:00
thread.h regcomp_trie.c. Convert _eC to legal name 2025-09-01 08:12:09 -06:00
time64.c time64.c: Remove no longer needed code 2022-09-29 13:08:27 -06:00
time64.h time64: declare tm_zone as const char* unconditionally 2020-07-18 01:28:15 +01:00
time64_config.h time64_config.h: #include reentr.h 2020-12-04 14:43:13 -07:00
toke.c intuit_more: Fix premature termination bug 2026-03-04 12:17:35 -07:00
uni_keywords.h remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
unicode_constants.h regen/unicode_constants: Create one for SHY 2025-10-26 13:58:09 -06:00
universal.c remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
unixish.h Employ PL_shutdownhook 2024-09-30 22:52:06 +02:00
utf8.c Use isEVEN, isODD 2026-03-01 12:24:39 -07:00
utf8.h utf8.h: Use legal macro name 2025-10-14 09:37:20 -06:00
utfebcdic.h Convert all core uses of _ASSERT__() to assert() 2025-09-03 19:46:22 -06:00
util.c Use isEVEN, isODD 2026-03-01 12:24:39 -07:00
util.h Make die() always expand to Perl_die_nocontext() 2025-09-21 06:55:45 -06:00
utils.lst Update IO-Compress to CPAN version 2.089 2019-11-06 23:24:10 +00:00
vutil.c Revert vutil.c changes from ba04a9040a 2026-03-05 22:28:13 +01:00
vutil.h cpan/version: Update to version 0.9933 2024-09-14 17:45:19 -04:00
vxs.inc cpan/version: Update to version 0.9933 2024-09-14 17:45:19 -04:00
warnings.h Implement PPC 0026: Enhanced qr//xx 2026-02-28 15:00:09 -07:00
write_buildcustomize.pl write_buildcustomize.pl: Standardize indents at 4 spaces 2024-07-06 10:41:21 -04:00
XSUB.h remove all uses of STATIC in core 2026-01-31 13:17:41 +01:00
zaphod32_hash.h Standardize .h recursive #include guard names 2026-01-22 07:21:21 -07:00

Perl is Copyright (C) 1993 - 2026 by Larry Wall and others.

All rights reserved.

# ABOUT PERL

Perl is a general-purpose programming language originally developed for
text manipulation and now used for a wide range of tasks including
system administration, web development, network programming, GUI
development, and more.

The language is intended to be practical (easy to use, efficient,
complete) rather than beautiful (tiny, elegant, minimal).  Its major
features are that it's easy to use, supports both procedural and
object-oriented (OO) programming, has powerful built-in support for text
processing, and has one of the world's most impressive collections of
third-party modules.

For an introduction to the language's features, see pod/perlintro.pod.

For a discussion of the important changes in this release, see
pod/perldelta.pod.

There are also many Perl books available, covering a wide variety of topics,
from various publishers.  See pod/perlbook.pod for more information.


# INSTALLATION

If you're using a relatively modern operating system and want to
install this version of Perl locally, run the following commands:

    ./Configure -des -Dprefix=$HOME/localperl
    make test
    make install

This will configure and compile perl for your platform, run the regression
tests, and install perl in a subdirectory "localperl" of your home directory.

If you run into any trouble whatsoever or you need to install a customized
version of Perl, you should read the detailed instructions in the "INSTALL"
file that came with this distribution.  Additionally, there are a number of
"README" files with hints and tips about building and using Perl on a wide
variety of platforms, some more common than others.

Once you have Perl installed, a wealth of documentation is available to you
through the 'perldoc' tool.  To get started, run this command:

    perldoc perl


# IF YOU RUN INTO TROUBLE

Perl is a large and complex system that's used for everything from
knitting to rocket science.  If you run into trouble, it's quite
likely that someone else has already solved the problem you're
facing. Once you've exhausted the documentation, please report bugs to us
at the GitHub issue tracker at https://github.com/Perl/perl5/issues

While it was current when we made it available, Perl is constantly evolving
and there may be a more recent version that fixes bugs you've run into or
adds new features that you might find useful.

You can always find the latest version of perl on a CPAN (Comprehensive Perl
Archive Network) site near you at https://www.cpan.org/src/

If you want to submit a simple patch to the perl source, see the "SUPER
QUICK PATCH GUIDE" in pod/perlhack.pod.

Just a personal note:  I want you to know that I create nice things like this
because it pleases the Author of my story.  If this bothers you, then your
notion of Authorship needs some revision.  But you can use perl anyway. :-)

The author.


# LICENSING

This program is free software; you can redistribute it and/or modify
it under the terms of either:

a.  the GNU General Public License as published by the Free
    Software Foundation; either version 1, or (at your option) any
    later version, or

b.  the "Artistic License" which comes with this Kit.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See either
the GNU General Public License or the Artistic License for more details.

You should have received a copy of the Artistic License with this
Kit, in the file named "Artistic".  If not, I'll be glad to provide one.

You should also have received a copy of the GNU General Public License
along with this program in the file named "Copying". If not, see
<https://www.gnu.org/licenses/>.

For those of you that choose to use the GNU General Public License,
my interpretation of the GNU General Public License is that no Perl
script falls under the terms of the GPL unless you explicitly put
said script under the terms of the GPL yourself.  Furthermore, any
object code linked with perl does not automatically fall under the
terms of the GPL, provided such object code only adds definitions
of subroutines and variables, and does not otherwise impair the
resulting interpreter from executing any standard Perl script.  I
consider linking in C subroutines in this manner to be the moral
equivalent of defining subroutines in the Perl language itself.  You
may sell such an object file as proprietary provided that you provide
or offer to provide the Perl source, as specified by the GNU General
Public License.  (This is merely an alternate way of specifying input
to the program.)  You may also sell a binary produced by the dumping of
a running Perl script that belongs to you, provided that you provide or
offer to provide the Perl source as specified by the GPL.  (The
fact that a Perl interpreter and your code are in the same binary file
is, in this case, a form of mere aggregation.)  This is my interpretation
of the GPL.  If you still have concerns or difficulties understanding
my intent, feel free to contact me.  Of course, the Artistic License
spells all this out for your protection, so you may prefer to use that.