I started learning Perl not too long ago (in 2016), and I am trying to get to a higher level. At least, I want to get familiar with every builtin function. Is there a website that explains what each builtin function does and how to use it with a little demo program that one can test?

I copied all the functions from perldoc and put them in an Excel file, and then I organized them into two groups -- the ones that I understand already and the ones that I don't understand. Then I broke them down into futher sub groups. These are the ones that I have used before and somewhat understand how they work and what they do:

FLOW-CONTROL:
goto sub if elsif else for foreach while continue next last return do die exit sleep kill system exec and or && || ? :

STDIO AND FILE SYSTEM I/O:
open print printf sysopen sysseek binmode eof rename chmod close unlink getc read stat utime seek tell sysread syswrite truncate opendir chdir closedir mkdir rmdir readdir rewinddir -e -f -s -d

MATH:
abs int ord srand rand exp cos sin sqrt ++ -- + - / * << >> == *= /= |= &= != >= <= < > | ^ & ! % ~

STRINGS:
substr length vec chomp chop pack unpack hex oct chr undef sprintf uc lc index rindex eq ne qw tr y s m x =~

LISTS:
map grep splice reverse push pop shift unshift sort split join

VARIABLES:
defined exists ref my scalar caller wantarray @_ @ARGV $_ $a $b $0 __FILE__ $^O $^T $^W $| $$ $[ $] $/ $ENV{NAME} $1 $2..

TIME:
localtime time

OTHER:
use package import eval require warn __END__ __DATA__


Now, these are the ones that I don't understand:

Never used these and not sure:
atan2 q qx qq qr chown reset gmtime fork link symlink local dump bless our pos readline readlink syscall write format seekdir telldir lock prototype formline getppid keys log

Never used these and have no clue what they do or what purpose they serve:
accept endgrent endhostent endnetent endpwent endprotoent endservent tie bind untie dbmclose shutdown connect socketpair socket dbmopen delete readpipe glob fcntl getpeername tied getpriority getgrnam getgrgid gethostbyaddr gethostbyname getnetbyaddr getnetbyname getgrent gethostent getnetent getpwent getprotoent getservent getpwuid getpwnam getpgrp getprotobyname getprotobynumber getservbyname getservbyport semget getsockopt msgget shmget flock chroot m crypt pipe study setgrent sethostent setnetent setpwent setprotoent setservent quotemeta shmread recv msgrcv listen select each getsockname values lcfirst ucfirst times fileno getlogin alarm send msgsnd setpriority umask setsockopt setpgrp redo lstat ioctl msgctl semctl semop shmctl no waitpid wait shmwrite


In reply to How to find Perl demo programs? by harangzsolt33

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.