рдЗрд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рддрд░реАрдХреЗ рд╣реИрдВ


#!/usr/bin/perl -c Please, listen to, my $words; seek love, joy, happiness for everything; study hard and sleep longer if able; # Perl Poetry, The Sentiment # (c) http://www.perlmonks.org/?node_id=882536 



рд░реЗрдЧрд┐рд╕реНрддрд╛рди ...



рдЧрд░реНрд╡ рдФрд░ рд░рд╛рдЬрд╕реА Perl рд░реЗрдЧрд┐рд╕реНрддрд╛рди рджреНрд╡рд╛рд░рд╛ рдЦрдбрд╝рд╛ рд╣реИред рдЙрдиреНрд╣реЛрдВрдиреЗ 1987 рдореЗрдВ рдЕрдкрдиреА рдпрд╛рддреНрд░рд╛ рд╢реБрд░реВ рдХреА, рдХрдИ рдЧрд░реНрдорд┐рдпреЛрдВ рдореЗрдВ рд╣рдЬрд╛рд░реЛрдВ рд░реЗрдЧрд┐рд╕реНрддрд╛рдиреЛрдВ рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рддреЗ рд╣реБрдП, рдЙрдиреНрд╣реЛрдВрдиреЗ рдпрд╣рд╛рдВ рджреЗрдЦрд╛ рдФрд░ рд╡рд╣рд╛рдВ рдЕрджреНрднреБрдд, рдирдЦрд▓рд┐рд╕реНрддрд╛рди рдкрд╛рдиреА рд╕реЗ рднрд░рд╛ рд╣реБрдЖ, рдЬреИрд╕реЗ рдХрд┐ рдмрд╛рд░рд┐рд╢ рдХрд╛ рдореМрд╕рдо рд╢реБрд░реВ рд╣реБрдЖ, рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╕реВрдЦреЗ рдХреЗ рд╕рд╛рде рдмрд╛рд░реА-рдмрд╛рд░реА рд╕реЗред рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реИрдВ, рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рджреБрд░реНрднрд╛рдЧреНрдп рдЙрд╕рдХреЗ рд╕рд╛рде рд╣реБрдЖ, рдЬрдм рдПрдХ рдЖрд╕рдиреНрди рд╕рд╡рд╛рд░ рдиреЗ рдЙрд╕реЗ рдЧрд╣рд░реЗ рдФрд░ рдЧрд╣рд░реЗ рд╢реБрд╖реНрдХ рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдореЗрдВ рд▓реЗ рдЧрдпрд╛ рдЬрд╣рд╛рдВ рдХреЛрдИ рдЙрдореНрдореАрдж рднреА рдирд╣реАрдВ рдереАред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдРрд╕реЗ рдорд╛рдорд▓реЗ рдереЗ рдЬрдм рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдХреЗ рдмреАрдЪ рдореЗрдВ рдкреВрд░реЗ рд╢рд╣рд░ рдЬреАрд╡рди рдФрд░ рд▓реЛрдЧреЛрдВ рд╕реЗ рднрд░реЗ рд╣реБрдП рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рдереЗ, рдпрд╣ рдореГрдЧрддреГрд╖реНрдгрд╛ рдХреА рддрд░рд╣ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдирд╣реАрдВ - рдпрд╣ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдереАред рдкрд░реНрд▓ рд▓реЛрдЧреЛрдВ рдХреА рд░рдЪрдирд╛рддреНрдордХ рдкреНрд░рддрд┐рднрд╛ рдХреЛ рджреЗрдЦрдХрд░ рдХрднреА рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдирд╣реАрдВ рд╣реБрдЖред рдЙрд╕рдиреЗ рдЕрдкрдиреА рдЗрдЪреНрдЫрд╛ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реБрдП рдордиреБрд╖реНрдп рдкрд░ рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рдирд╣реАрдВ рдирд┐рдХрд╛рд▓рд╛, рд╡рд╣ рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдХреА рдЧрд╣рд░рд╛рдИ рдореЗрдВ рдЕрдЬреНрдЮрд╛рдд рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛ред рд╡рд╣ 1 "рдЬрдВрдЧрд▓реА" рд╕рд╡рд╛рд░реЛрдВ рд╕реЗ рдирд┐рд░рд╛рд╢ рдерд╛ - рдмрдбрд╝реЗ рд╢рд╣рд░реЛрдВ рдХреЗ рд▓реЛрдЧ рдЬрдЯрд┐рд▓ рдХрд╛рд░реЛрдВ рдореЗрдВ рдпрд╛рддреНрд░рд╛ рдХрд░рддреЗ рдереЗред рдпрд╣рд╛рдБ, рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдореЗрдВ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдмрд╕реЗ рдЖрдХрд░реНрд╖рдХ рд░реАрдврд╝ рднреА рдЙрдиреНрд╣реЗрдВ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдореАрдЯрд░ рдЖрдЧреЗ рдирд╣реАрдВ рдмрдврд╝рд╛ рд╕рдХрддреА рд╣реИред рдЖрджрдд рд╕реЗ рдмрд╛рд╣рд░, рд╡реЗ рдЙрдирдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреВрдбрд╝реЗрджрд╛рди рд▓реЗрддреЗ рд╣реИрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рд▓рдЧрд╛рддрд╛рд░ рдзрдХреНрдХрд╛ рджреЗрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рд╡реЗ рддреЗрдЬреА рд╕реЗ рдФрд░ рддреЗрдЬреА рд╕реЗ рдЪрд▓рддреЗ рд╣реИрдВред рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдХреА рд╕реБрдВрджрд░рддрд╛, рдЗрд╕рдХреЗ рджрд░реНрд╢рди, рдЙрдиреНрд╣реЗрдВ рдЕрддреАрдд рдореЗрдВ рд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ рдкреВрд░реЗ рдмреЗрдЬрд╛рди рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдХреЛ рдкреАрдЫреЗ рдЫреЛрдбрд╝рддреЗ рд╣реБрдП, рд▓рдХреНрд╖реНрдп рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдРрд╕реЗ рдЕрдиреНрдп рд▓реЛрдЧ рдереЗ рдЬреЛ рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдХреЛ рд░рдЪрдирд╛рддреНрдордХрддрд╛ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдирдпрд╛, рдореБрдлреНрдд, рдЕрд╕реАрдорд┐рдд рд╕реНрдерд╛рди рдорд╛рдирддреЗ рдереЗред рдРрд╕реЗ рд╕рд╛рдерд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдпрд╛рддреНрд░рд╛ рдХрд░рдирд╛ рд╣рдореЗрд╢рд╛ рдПрдХ рдмрд╣реБрдд рдЦреБрд╢реА рдХреА рдмрд╛рдд рд░рд╣реА рд╣реИред рдирд┐рд╢рд╛рди рдиреЗ рдЙрдиреНрд╣реЗрдВ рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдХреЗ рдЬреАрд╡рди рджреНрд╡реАрдкреЛрдВ рд╕реЗ рднрд░реЗ рд╡рд┐рдЪрд┐рддреНрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдЧреЗ рдмрдврд╝рд╛рдпрд╛ред рдХрднреА-рдХрднреА рдРрд╕реЗ рд▓реЛрдЧреЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рдКрдВрдЯреЛрдВ рдХреЗ рдкреВрд░реЗ рдХрд╛рд░рд╡рд╛рдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░ рд╕рдХрддрд╛ рдерд╛, рдЬреЛ рдзреАрд░реЗ-рдзреАрд░реЗ рд░реЗрдЧрд┐рд╕реНрддрд╛рди рд╕реЗ рднрдЯрдХ рд░рд╣рд╛ рдерд╛ред рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдирд╢реЗ рдореЗрдВ рдерд╛, рдФрд░ рдХрд┐рд╕реА рддрд░рд╣ рдПрдХ рд╡рд┐рд╢реЗрд╖ рддрд░реАрдХреЗ рд╕реЗ, рдЬрд╛рджреБрдИ рд░реВрдк рд╕реЗ рд╕рд╡рд╛рд░реЛрдВ рдХреЗ рдордЬрдмреВрдд рдпреБрд╡рд╛ рджрд┐рдорд╛рдЧ рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдкрд░реНрд▓ рдиреЗ рдЕрдХреНрд╕рд░ рджреЗрдЦрд╛ рдХрд┐ рд░реЗрдд рдХреЗ рдорд╣рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд░реАрдмреЛрдВ рдХреЛ рдкрд╛рдЧрд▓ рд╣реЛрдирд╛ рд╢реБрд░реВ рд╣реЛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдХрд┐ рдХреБрдЫ рдФрд░ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реНрдордд рдореЗрдВ рдирд╣реАрдВ рдереЗред рджреВрд╕рд░реЛрдВ рдиреЗ рд░реЗрдд рдореЗрдВ рдЙрд╕реЗ рднреА рд╕рд╛рдл рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рд╡реЗ рдореГрдЧрддреГрд╖реНрдгрд╛ рд╕реЗ рднреА рдмрд░реНрдмрд╛рдж рд╣реЛ рдЧрдП рдереЗ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрднреА рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдирд╣реАрдВ рдереЗред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдкрд░реНрд▓ рдЗрди рдЧрд░реАрдм рд╕рд╛рдерд┐рдпреЛрдВ рдХреА рдорджрдж рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдерд╛, рди рд╣реА рд╡рд╣ рдпрд╛рддреНрд░рд╛ рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдкрд░реНрд▓ рдХреЛ рдпрд╛рддреНрд░рд╛ рдХреЗ рджреМрд░рд╛рди рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрд╛, рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡рд╣ рдкреИрджрд╛ рд╣реБрдЖ рдерд╛ред

рдФрд░ рдпрд╣рд╛рдБ рд╡рд╣ рдЖрдкрдХреЗ рд╕рд╛рдордиреЗ рд╣реИ, рдЦрд╝реБрд╢реА рд╕реЗ рдЙрд╕реЗ рд▓рд╛рдд рдорд╛рд░рддреЗ рд╣реБрдП рдЗрд╕ рдмреЗрдЬрд╛рди рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдЖрдХрд░реНрд╖рдХ рд╕реИрд░ рдХрд░рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рддреЗ рд╣реБрдП, рдЙрд╕ рджреВрд░реА рдореЗрдВ рдЬрд╣рд╛рдБ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

... рдКрдБрдЯ реи



(*) рдкрд░реНрд▓ рдХрд╛ рджрд░реНрд╢рди рдпрд╣ рд╣реИ рдХрд┐ рдХрдард┐рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП рд╕рд░рд▓ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ред рдпреЗ рдРрд╕реЗ рдХрд╛рд░реНрдп рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рджрд┐рди-рдкреНрд░рддрд┐рджрд┐рди рд╣рд▓ рдХрд░рддреЗ рд╣реИрдВред рдЖрдк рдХреНрдпрд╛ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдпрд╣ рдХрд╣рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╢рдмреНрджреЛрдВ рдХреЛ рдХрд╣рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдкрд░реНрд▓ рдХреЛ рдкрд╛рд░рдВрдкрд░рд┐рдХ рд░реВрдк рд╕реЗ рд▓рдЧрднрдЧ рд╕рднреА * рдирд┐рдХреНрд╕ рд╡рд┐рддрд░рдг рдХреЗ рд╡рд┐рддрд░рдг рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдкрд░реНрд▓ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ (рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╣рдо * рдирд┐рдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ)ред

(*) рдкрд░реНрд▓ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдкрд┐рдЫрдбрд╝реЗ рд╕рдВрдЧрддрддрд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬреЛ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдкрд░реНрд▓ рдореЗрдВ рдХрд┐рддрдирд╛ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред

(*) CPAN ред рдкрд░реНрд▓ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рд╡рд┐рддрд░рдг рдиреЗрдЯрд╡рд░реНрдХ, рдХреБрдЫ (рдорд╛рд╡реЗрди, рдЖрдЗрд╡реА ) / рдЬрд╛рд╡рд╛, рд░реВрдмреАрдЬрдореНрд╕, рдПрдирдкреАрдПрдо / рдиреЛрдб / рдЬреЗрдПрд╕ред рдХрдкрдбрд╝рд╛ рд╕реНрд╡-рд╕рдВрдпреЛрдЬрди, рд╕рднреА рдЕрд╡рд╕рд░реЛрдВ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдПрдХ рднрдВрдбрд╛рд░ред рдлрд┐рд▓рд╣рд╛рд▓, рд╕рдмрд╕реЗ рдмрдбрд╝реА рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ ( 121,000 рд╕реЗ рдЕрдзрд┐рдХ рдореЙрдбреНрдпреВрд▓)ред CPAN рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдХрдИ рдЬрдЯрд┐рд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдПрдХ рдЙрдкрдпреБрдХреНрдд рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рддреБрдЪреНрдЫ рдЦреЛрдЬ рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдорд╛рд╡реЗрди рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХреБрдЫ рд╣рдж рддрдХ рддрдирд╛рд╡рдкреВрд░реНрдг рд╣реИ, рд╕реАрдкреАрдПрдПрди рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред рдЗрд╕реЗ рдкреВрд░реНрд╡ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬрд╛рджреВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдбреЗрдмрд┐рдпрди / рдЙрдмрдВрдЯреВ рд╕реЗ рдЙрдкрдпреБрдХреНрдд рд╣реИред

(*) рдкрд░реНрд▓ рдиреЗ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рдордзреНрдпрд╡рд░реНрддреА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдореЗрдВ рдкрд╛рда рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ред рдпрд╣ рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдпрджреНрдпрдкрд┐ рдЕрдХреНрд╕рд░ рдирд╣реАрдВ, рд╕рдВрдХрд▓рди рдЪрд░рдг рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЗрд╕рдореЗрдВ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рд╢реБрджреНрдзрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛, рдЙрдкрдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рдирд╛рдореЛрдВ рдФрд░ рддрд░реНрдХреЛрдВ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ (рдХреЗрд╡рд▓ рдЕрдЧрд░ рдХреЛрдИ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╣реИ), рддреЛ рдХрдХреНрд╖рд╛ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдХреЙрд▓ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ред рдмреЗрд╢рдХ рдпрд╣ рд╕реА ++ рд╕рдВрдХрд▓рдХ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдмреБрд░рд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕реА ++ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреБрдЫ рдкреАрдЫреЗ рдЫреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрд░реНрд▓ рдХрдВрдкрд╛рдЗрд▓рд░ рдЧрдгрд┐рддреАрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЧрд▓рдд рдХреЙрд▓ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдПрдХ рд░реВрдЯ рдПрдХ рд╕рдВрдХрд▓рди рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ)ред рдпрд╣рд╛рдБ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ:

 #!/usr/bin/perl -w use strict; my Dog $aDog = new Dog; # :   Dog $aDog->{wings} = '?'; #  (. ):     feed $aDog; # :     sqrt -2; # :     


рдкрд░реНрд▓ рд╣рдореЗрд╢рд╛ рдЕрдкрдиреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдХрд╛ рдкрд╛рд▓рди рдХрд░рддрд╛ рд╣реИ , рдФрд░ рдЗрд╕рдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЪреЗрдХ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рдЦрд░реНрдЪ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдмрд╛рдж рдореЗрдВ рдЙрд╕ рдкрд░ рдЕрдзрд┐рдХред

(*) рдлрдВрдХреНрд╢рди рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдЖрдкрдХреЛ рдЙрдкрдкреНрд░реЛрдЧреНрд░рд╛рдо рдФрд░ рдЙрдирдХреЗ рддрд░реНрдХреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд╕реА ++ рдореЗрдВ рдлреЙрд░рд╡рд░реНрдб рдбрд┐рдХреНрд▓реЗрд░реЗрд╢рди рдХреЗ рд╕рдорд╛рди рдХреБрдЫ рд╣реИ, рдпрджрд┐ рдХреЛрдИ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╣реИ, рддреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рд╕рдмрдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЙрдкрдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╕рдордп рдЬреЛрдбрд╝реА рдХреЛрд╖реНрдардХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред

 sub feed($$); feed 'Sharik', 'Fruit'; # Ok feed 'Sharik'; # :    feed 'Sharik', 'Apple', 'Fruit'; #:   sub feed($$) { print shift, ' eat ', shift, "\n"; } 


(*) $ @% ред рдкрд░реНрд▓ рдЕрдкрдиреЗ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЪрд░ рдХреЛ рдЕрд▓рдЧ рдХрд░рддрд╛ рд╣реИ: ' $ ' рд╕реНрдХреЗрд▓рд░ (рд╕рдВрдЦреНрдпрд╛, рд░реЗрдЦрд╛, рд▓рд┐рдВрдХ), ' @ ' рд╕рд░рдгреА (рд╕реНрдХреЗрд▓рд░реНрд╕ рдХрд╛ рдЕрдиреБрдХреНрд░рдо), ' % ' рд╣реИрд╢ (рд╕реНрдХреЗрд▓рд░реНрд╕ рдХрд╛ рд╕рд╣рдпреЛрдЧреА рд╕рд░рдгреА)ред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрд▓рд╛рд╕рд┐рдХ рдЖрджрд┐рдо рдкреНрд░рдХрд╛рд░ рдПрдХ рд╕реНрдХреЗрд▓рд░ рджреНрд╡рд╛рд░рд╛ рджрд░реНрд╢рд╛рдП рдЧрдП рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡реЗ рдХрдбрд╝рд╛рдИ рд╕реЗ рдХрдВрдЯреЗрдирд░реЛрдВ рд╕реЗ рдЕрд▓рдЧ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рдЬреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╣рдо рдкрд░реЗрд╢рд╛рдиреА рд╕реЗ рдмрдЪ рдЬрд╛рддреЗ рд╣реИрдВред рдкрд░реНрд▓ рдЕрдкрдиреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ (рдУрдУрдкреА рдХреЗ рд▓рд┐рдП, рд░рд┐рдпрд╛рдпрддреЗрдВ рдкреЗрд╢ рдХреА рдЧрдИ рд╣реИрдВ - рдХрд┐рд╕реА рднреА рдирд┐рд░реНрдорд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЛ рд╡рд░реНрдЧ рдореЗрдВ рдЖрд╢реАрд░реНрд╡рд╛рдж рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕реНрдкрд╖реНрдЯ рдЕрд▓рдЧрд╛рд╡ рдХреЗ рдХрд╛рд░рдг, рдПрдХ рд╣реА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЧреИрд░-рдкрд░рд╕реНрдкрд░ рд╡рд┐рд░реЛрдзреА рдЪрд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

 #!/usr/bin/perl -w use strict; my $solarSystem = 'Mercury Venus Earth Mars Jupiter Saturn Uranus Neptune'; my @solarSystem = qw(Mercury Venus Earth Mars Jupiter Saturn Uranus Neptune); my %solarSystem = (haveLife => 1, havePerl => 1); sub solarSystem() { print 'Mercury Venus Earth Mars Jupiter Saturn Uranus Neptune'; } 


рдкрд░реНрд▓ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдСрдкрд░реЗрд╢рди рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд╕рдВрджрд░реНрдн рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рдирд╣реАрдВ рд╣реИред рдкрд░реНрд▓ рддреАрди рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрджрд░реНрднреЛрдВ рдХреЛ рд╕рдордЭрддрд╛ рд╣реИ: рдЦрд╛рд▓реА (рдХреЛрдИ рд╕рдВрджрд░реНрдн рдирд╣реАрдВ), рд╕реНрдХреЗрд▓рд░ рдФрд░ рд╕реВрдЪреА (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕реНрдХреЗрд▓рд░ рдЪрд░ рдХреЗ рдорд╛рди рдХреЛ рд╕реНрдХреЗрд▓рд░ рд╕рдВрджрд░реНрдн рдмрдирд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рд╕рд░рдгреА рдпрд╛ рд╣реИрд╢ рд╕реВрдЪреА рд╕рдВрджрд░реНрдн рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░рддрд╛ рд╣реИ)ред рдкрд░реНрд▓ рджрд┐рдирдЪрд░реНрдпрд╛ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд╕рдВрджрд░реНрдн рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВ рдФрд░ рддрджрдиреБрд╕рд╛рд░, рд╡рд┐рднрд┐рдиреНрди рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рд░рдЪрдирд╛рддреНрдордХрддрд╛ рдХреЗ рд▓рд┐рдП рдЬрдЧрд╣ рджреЗрддрд╛ рд╣реИред

рднрд╛рд╖рд╛ рдореЗрдВ рдХреЛрдИ рд╕реВрдЪрдХ рдЕрдВрдХрдЧрдгрд┐рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд▓рд┐рдВрдХ рд╣реИрдВред рдЙрдкрдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рддрд░реНрдХ рд╕рдВрджрд░реНрдн рджреНрд╡рд╛рд░рд╛ рдкрд╛рд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рд╕реНрд╡рдпрдВ рдЪрд░ рдХреЗ рдореВрд▓реНрдп рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рддрд╛ рд╣реИ (рди рдХреЗрд╡рд▓ рд╕реНрдХреЗрд▓рд░, рдмрд▓реНрдХрд┐ рдХрдВрдЯреЗрдирд░ рднреА рдХреЙрдкреА рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ)ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдореВрд▓реНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рд╕рдмрд░реВрдЯреАрди рдХреЛ рддрд░реНрдХ рджреЗрдирд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд░реНрд▓ рдореЗрдВ рд╢рд╛рд╕реНрддреНрд░реАрдп рдЙрдк-рд▓реЗрдЦрди рдХрд╛ рддрд╛рддреНрдкрд░реНрдп рдореВрд▓реНрдп рд╕реЗ рдЧреБрдЬрд░рдирд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреНред рдпрд╣ рдЕрдкрдиреЗ рддрд░реНрдХреЛрдВ рдХреЗ рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рдХрд╛ рдкрд░рд┐рдЪрдп рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред

 #!/usr/bin/perl -w use strict; sub upper { my $value = $_[0]; #    $value $value = uc $value; #    $_[0] = $value; #      } my $bigLetters = 'big-letters'; upper $bigLetters; print $bigLetters, "\n"; #  BIG-LETTERS 


(*) рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреА рдУрд╡рд░рд▓реЛрдбрд┐рдВрдЧ (рджреБрд░реНрд▓рдн рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрдм рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ)ред рдЖрдк рд░рд┐рдХреНрдд рд╕реНрдерд╛рди, рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд▓рдЧрднрдЧ рд╕рднреА рдЪреАрдЬреЛрдВ рдХреЛ рдЕрдзрд┐рднрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рд╢рд╛рдпрдж рдореИрдВрдиреЗ рдпрд╣ рдирд╣реАрдВ рд╕реБрдирд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЯрд┐рдкреНрдкрдгреА рдХреЛ рдУрд╡рд░рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред рдПрдХрдорд╛рддреНрд░ рднрд╛рд╖рд╛ (рдореЗрд░реЗ рд▓рд┐рдП рдЬреНрдЮрд╛рдд) рдЬреЛ рдЖрдкрдХреЛ рд╕реНрдерд┐рд░рд╛рдВрдХ (рд╕рдВрдЦреНрдпрд╛, рдЕрдХреНрд╖рд░, рд╢рдмреНрдж) рдХреЛ рдЕрдзрд┐рднрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдЯрд┐рд▓ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рдорд╛рди рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрдЬ рд╕рднреА рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╛ рдЕрд╕реАрдорд┐рдд рдореВрд▓реНрдп рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

 #  BigMath.pm package BigMath; use overload; use Math::BigInt; sub import { overload::constant integer => sub { Math::BigInt->new(shift) }; } 1; #  BigMath.pl { use BigMath; my $bigInt = 2123; #  BigInt print $bigInt->as_bin(); # 0b100001001011 } { my $int = 2123; print $int->as_bin(); #   as_bin() } 


рдкрд░реНрд▓ рдЖрдкрдХреЛ рдорд╛рдирдХ рднрд╛рд╖рд╛ рд░реВрдЯреАрди рдЕрдзрд┐рднрд╛рд░ рджреЗрддрд╛ рд╣реИред

(*) рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкрд░реНрд▓ рдореЗрдВ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдПрдХреАрдХреГрдд рд╣реИрдВ ред рд╕рд╛рдорд╛рдиреНрдп рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкреИрдЯрд░реНрди рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд░реНрд▓ рдЕрдкрдиреЗ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд░реНрд▓ рдЖрдкрдХреЛ рдЦреЛрдЬ рдкреИрдЯрд░реНрди рдФрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдкреИрдЯрд░реНрди рдореЗрдВ рд╕реАрдзреЗ рдкрд░реНрд▓ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ:

 my $math = '100 + 200 = 300'; $math =~ s/(\d+)/$1 * 2/ge; #       2 print $math, "\n"; # 200 + 400 = 600 


рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдпреВрдирд┐рдХреЛрдб рдЧреБрдгреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИрдВ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЪрд░рд┐рддреНрд░ рдЧреБрдгреЛрдВ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред рдЖрдк рдЬрдЯрд┐рд▓ рдкреИрдЯрд░реНрди (рдЬреИрд╕реЗ \ s, \ w, рдЖрджрд┐) рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рдВрдХреНрд╖рд┐рдкреНрддреАрдХрд░рдг рджрд░реНрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдкрд░реНрд▓ рдореЗрдВ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд▓рд╛рд▓рдЪреА рдФрд░ рдЧреИрд░-рд▓рд╛рд▓рдЪреА рджреЛрдиреЛрдВ рдЦреЛрдЬреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИред

(*) рдкрд░реНрд▓, рд╕рдмрд░реВрдЯреАрди рдореЗрдВ рд░рд┐рдЯрд░реНрди рдХреАрд╡рд░реНрдб рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЕрдВрддрд┐рдо рдореВрд▓реНрдпрд╛рдВрдХрд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рджреЗрддрд╛ рд╣реИ (рдпрд╣ рдЕрдм рдлреИрд╢рдиреЗрдмрд▓ рд▓рдЧрддрд╛ рд╣реИ)ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЬрдм рд╕рдмрд░реВрдЯреАрдиреНрд╕ рдмреБрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдХреЛрд╖реНрдардХреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдк рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

(*) рдмреНрд▓реЙрдХ рдкрд░реНрд▓ рдореЗрдВред рдПрдХ рдмреНрд▓реЙрдХ рдШреБрдВрдШрд░рд╛рд▓реЗ рдмреНрд░реЗрд╕рд┐рдЬрд╝ {...} рдХреА рдПрдХ рдЬреЛрдбрд╝реА рд╣реИ, рдПрдХ рдмреНрд▓реЙрдХ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП , рдЬрдмрдХрд┐ , рдЬреИрд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд░рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХ рдмреНрд▓реЙрдХ рд╕реНрд╡рдпрдВ рджреНрд╡рд╛рд░рд╛ рдореМрдЬреВрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдХреЛрдИ рднреА рдмреНрд▓реЙрдХ рдЕрдЧрд▓реЗ , рдЕрдВрддрд┐рдо рдФрд░ рд░реАрдбреЛ рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдпрд╛рдиреА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХрд╛рдлреА рдХрд╛рдиреВрдиреА рд╣реИ:

 { print "Yeah\n"; last; print "Unreachable code\n"; } { print "Forever loop\n"; redo; } 


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рдмрд░реВрдЯреАрди рдмреНрд▓реЙрдХ рдХреЛ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдЖрдкрдХреЛ рднрд╛рд╖рд╛ рдХреЛ рдЕрдкрдиреЗ рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде рд╕рдореГрджреНрдз рд░реВрдк рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдкрд░реНрд▓ рдореЗрдВ рд╕реБрдВрджрд░, рд╕реНрд╡-рдкреНрд░рд▓реЗрдЦрд┐рдд рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓рд┐рдЦрдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдХрд▓реНрдкрдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

 use strict; #sub transaction(&$); #sub update($$$); #sub set(+); #sub where(+); #sub rollback(&); #sub throw($$); transaction { update 'user', set { name => 'caiiiycuk' }, where { id => '1' }; } rollback { throw 500, "rollback exception"; } 


рдкрд░реНрд▓ рдХреЛрд╢рд┐рд╢ / рдкрдХрдбрд╝рдиреЗ / рдЕрдВрдд рдореЗрдВ рдмреНрд▓реЙрдХ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ; рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдмреНрд▓реЙрдХ рд░реВрдЯреАрди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рдЯреАрдХ рд░реВрдк рд╕реЗ рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ / рдЕрдиреНрдпрдерд╛ рдХрд┐рд╕реА рдмреНрд▓реЙрдХ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рддреЛ / / рдФрд░ рдЕрдЧрд░ / рддреЛ рдкрд░реНрд▓ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдпрджрд┐ / elsif / рдЕрдиреНрдпрдерд╛ рдХреЗ рдмрдЬрд╛рдп рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕реА рддрд░рд╣, рдХреЛрдИ рд╕реНрд╡рд┐рдЪ / рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИ , рдЗрд╕реЗ рддреБрдЪреНрдЫ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

(*) рдЬрдмрдХрд┐ рд▓реВрдк рдЬрд╛рд░реА рдЦрдВрдб рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЕрдЧрд▓реЗ , рдЕрдВрддрд┐рдо рдпрд╛ рдлрд┐рд░ рд╕реЗ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ (рдпрд╛рдиреА, рдпрд╣ рд╣рдореЗрд╢рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддрд╛ рд╣реИ) (рдЬреИрд╕рд╛ рдХрд┐ рдПрд▓рд┐рдиреЗрдЯрд░ рдиреЗ рдареАрдХ рдХрд╣рд╛ рд╣реИ , рд░реАрдбреЛ рдХреЙрд▓ рдЬрд╛рд░реА рдЕрдиреБрднрд╛рдЧ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ)ред

 while (1) { next; } continue { print "Yet another loop done \n"; } 


(*) рдЪрд░ рдХреЗ рд▓рд┐рдП рддреАрди рд╕реНрдХреЛрдк: рд╡реИрд╢реНрд╡рд┐рдХ, рд╢рд╛рдмреНрджрд┐рдХ рдФрд░ рд╕реНрдерд╛рдиреАрдпред рд╕реНрдерд╛рдиреАрдп рд╕реНрдХреЛрдк рд╡реИрд░рд┐рдПрдмрд▓ рдХреЗ рдорд╛рди рдХреЛ рд╡рд░реНрддрдорд╛рди рдмреНрд▓реЙрдХ рддрдХ рдФрд░ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рд╕рднреА рд╕рдмрд░реВрдЯреАрди рдХреЙрд▓реНрд╕ рддрдХ рдмрдврд╝рд╛рддрд╛ рд╣реИ, рдЬреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдмреНрд▓реЙрдХ рдореЗрдВ рд╡реИрд╢реНрд╡рд┐рдХ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред рд╕реНрдерд╛рдиреАрдп рд╕реНрдХреЛрдк рдХреЛ рд░рди рдЯрд╛рдЗрдо рдкрд░ рдФрд░ рд▓реЗрдХреНрдЬрд╝рд┐рдХрд▓ рдХреЛ рдХрдВрдкреНрд▓реАрд╢рди рд╕реНрдЯреЗрдЬ рдкрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдпрд╣ рдмреНрд▓реЙрдХ рдХреЗ рднреАрддрд░ рд╕рдмрд╕реЗ рдЖрдо рд╕реНрдХреЛрдк рд╣реИ)ред

 use strict; our $a = 'global scope'; #   sub printLocal { local $a = 'local scope'; #   (    ) printGlobal(); } sub printGlobal { print $a, "\n"; } printGlobal(); # 'global scope' printLocal(); # 'local scope' printGlobal(); # 'global scope' 


(*) рдкрд░реНрд▓ рдЗрдореНрдкреНрд▓рд╛рдВрдЯреНрд╕ рдмрдВрдж рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рдЦреБрд╢реА рд╣реИ рдХрд┐ рдЕрдирд╛рдо рд╕рдмрд░реВрдЯреАрди рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдирд┐рдпрдорд┐рдд рдШреЛрд╖рдгрд╛ рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдХреБрдЫ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред

(*) рдкрд╣рд▓реЗ рд╕реЗ рд╣реА 2002 рдХреЗ рдмрд╛рдж рд╕реЗ, рдкрд░реНрд▓ рдиреЗ рдирд┐рд░рдВрддрд░ рд╕рдмрдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдЧрдгрдирд╛ рд╕реНрдерд┐рд░рд╛рдВрдХ ( рдХреЙрдиреНрд╕реНрдЯреНрд░реЗрдк ) рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдХреЙрд▓ рдХреЗ рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИред

(*) рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдлрд╝рд╛рдЗрд▓ рд╕рддреНрдпрд╛рдкрди рдСрдкрд░реЗрдЯрд░ (- rwxoRWXOezsfdlpSbctugkTBMAC )ред

 use strict; if (-e '/tmp' and -d '/tmp') { print '/tmp is directory', "\n"; } 


(*) рдСрдкрд░реЗрдЯрд░ <> ред рдпрд╣ рдХрдИ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЯреЗрдореНрдкрд▓реЗрдЯ рджреНрд╡рд╛рд░рд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рд╡реИрд╕реЗ, рдЦреЛрдЬ рд╡рд┐рдзрд┐ рдХреЛ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЧреНрд▓реЛрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред

 print join ',', <*.pl>, "\n"; #   *.pl 


рджреВрд╕рд░реЗ, рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдСрдкрд░реЗрдЯрд░ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рд╕реНрдХреЗрд▓рд░ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдпрд╣ рд▓рд╛рдЗрди рджреНрд╡рд╛рд░рд╛ рдбреЗрдЯрд╛ рд▓рд╛рдЗрди рдкрдврд╝рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рд╕реВрдЪреА рд╕рдВрджрд░реНрдн рдореЗрдВ, рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдХреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╕рд░рдгреА рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрдврд╝рддрд╛ рд╣реИред

 open F, '<somefile' or die; my @random = <F>; #      close F; 


рдФрд░ рдЕрдВрдд рдореЗрдВ, рдЦрд╛рд▓реА <> рдСрдкрд░реЗрдЯрд░ рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рдкрдврд╝рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдирд╛рдо рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓реЙрдиреНрдЪ рдХреЗ рддрд░реНрдХреЛрдВ рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдП рдЧрдП рдереЗред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рдЖрдк рдПрдХ рдмрдбрд╝реА рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрджрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рддрд░реНрдХреЛрдВ рдХреЗ рдмрд┐рдирд╛ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдпрд╣ рдПрд╕рдЯреАрдбреАрдЖрдИрдПрди рд╕реЗ рдкрдврд╝рддрд╛ рд╣реИред рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрдпреБрдХреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ | рдЪреВрдВрдХрд┐, рдЖрдкрдХреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЦреЛрд▓рдиреЗ рдФрд░ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдСрдкрд░реЗрдЯрд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реБрдП, рдмрд┐рд▓реНрд▓реА рдХрдорд╛рдВрдб рдХреЗ рдПрдирд╛рд▓реЙрдЧ рдХреЛ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

 print while (<>); 


(*) рдЙрдкрдпреЛрдЧреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЪрд░ $ _ ред рдЕрдзрд┐рдХрд╛рдВрд╢ рдорд╛рдирдХ рдкрд░реНрд▓ рд░реВрдЯреАрди рдФрд░ рдСрдкрд░реЗрдЯрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрдВ рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЗрдирдкреБрдЯ рддрд░реНрдХ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХрднреА-рдХрднреА рдпрд╣ рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

 use strict; while (<>) { print if (s/^print\s*(.*)/$1/); } #  while ($_ = <>) { print $_ if ($_ =~ s/^print\s*(.*)/$1/); } 


(*) рдкрд░реНрд▓ рдореЗрдВ, рдПрдХ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдкрд░рд┐рдгрд╛рдо рдПрдХ рдЕрдВрддрд░рд╛рд▓ рд╣реИ ред рдЗрд╕рд▓рд┐рдП, рдкрд░реНрд▓ рдореЗрдВ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреЗ рджреМрд░рд╛рди рдореВрд▓реНрдп рдХреЛ рдмрджрд▓рдирд╛ рд╕рдВрднрд╡ рд╣реИред

 ($new = $old) =~ s/bad/good/g; ## chomp($answer = <STDIN>); ## if ( ($k, $v) = $string =~ m/(\w+)=(\w+)/ ) { print "key: $k value: $v", "\n"; } 


(*) рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЗрдиреНрдХреНрд░реАрдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ рдЪрд░рд┐рддреНрд░ рд╕реЗрдЯ рд╕реЗ рдЕрдЧрд▓рд╛ рдХреНрд░рдордкрд░рд┐рд╡рд░реНрддрди рд▓реМрдЯрд╛рддрд╛ рд╣реИред

 my $a = 'aa'; print ++$a, "\n"; #  ab 


(*) рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдЧрд╣рд░рд╛рдИ рддрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣реИрд╢ рдФрд░ рд╕рд░рдгрд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░реЗрдВред рдпрд╛рдиреА рдЬрдм рдПрдХ рд╣реИрд╢ рдХреЛ рдЙрд╕ рдХреБрдВрдЬреА рддрдХ рдкрд╣реБрдВрдЪрд╛рдирд╛ рдЬреЛ рдЕрднреА рддрдХ рдЬреЛрдбрд╝рд╛ рдирд╣реАрдВ рдЧрдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рддрддреНрд╡ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд┐рдд рд╣реЛрддрд╛ рд╣реИред рдФрд░ рдкрд░реНрд▓ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рддрддреНрд╡ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рдЕрдирд╛рдо рд╣реИрд╢, рдПрдХ рдЕрдирд╛рдо рд╕рд░рдгреА рдпрд╛ рдПрдХ рд╕реНрдХреЗрд▓рд░ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред

 my $hash = {}; $hash->{first}->{second}->{third} = 5; print $hash->{first}->{second}->{third}, "\n"; # 5 


рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕рд░рдгрд┐рдпреЛрдВ рдореЗрдВ рдирдХрд╛рд░рд╛рддреНрдордХ рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИред рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рд╕реВрдЪрдХрд╛рдВрдХ рд╕рд░рдгреА рдХреЗ рдЕрдВрдд рд╕реЗ рддрддреНрд╡реЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИред

(*) рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдФрд░ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиред рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдкрд░реНрд▓ рдПрдХ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдореЗрдВ рдорд▓реНрдЯреА-рд▓рд╛рдЗрди рдЗрдирдкреБрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ:

 my $doc1 = 'There's More Than One Way To Do It -- 2012'; my $doc2 =<<"_DOC2_"; There's More Than One Way To Do It -- 2012 _DOC2_ print<<"_DOC3_"; There's More Than One Way To Do It -- 2012 _DOC3_ 


рдСрдкрд░реЗрдЯрд░ = << рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдкрдХреЛ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреЗ рд╕рдорд╛рди рд▓рд╛рдЗрди рдкрд░ рдорд▓реНрдЯреА-рд▓рд╛рдЗрди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд╕рд╛рде рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдВрдЪрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рднреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред

 use strict; sub printAll(@) { print join '', @_; } (my $quote =<<'__QUOTE__')=~s/^\s+//gm; The Road goes ever on and on, down from the door where it began. __QUOTE__ printAll(<<'__GOOD__',<<'__BAD__', $quote); There's More Than One Way To Do It __GOOD__ TIMTOWTDI __BAD__ 


рдкрд░реНрд▓ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреЗ рджреЛ рддрд░реАрдХреЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рддрд╛ рд╣реИ - рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рдФрд░ рдмрд┐рдирд╛ред рдпрджрд┐ рдЖрдк рдПрдХрд▓ рдЙрджреНрдзрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ (рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд┐рдирд╛) рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдХреНрд╖рд░ \ n рдХреЛ рд▓рд╛рдЗрди рдмреНрд░реЗрдХ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рджреВрд╕рд░реА рдУрд░, рдпрджрд┐ рдЖрдк рджреЛрд╣рд░реЗ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ " , рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреА рдЬрд╛рддреА рд╣реИ - рдкрд░реНрд▓ рдЕрдкрдиреЗ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдЪрд░ рдирд╛рдореЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдмрд╣реБрдд рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╕реАрдзреЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реЗ рднреА рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

 use strict; my $car = { brend => 'Lada', name => 'Kalina', drive => sub { "WEEEEEE!\n"; } }; #  Do you want to drive on $car->{brend} $car->{name}?\n print 'Do you want to drive on $car->{brend} $car->{name}?\n', "\n"; #  Do you want to drive on Lada Kalina? print "Do you want to drive on $car->{brend} $car->{name}?\n"; #  WEEEEEE! print "@{[ $car->{drive}->() ]}"; #  print "@{[ exit ]}"; 


рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкрд░реНрд▓ рдЖрдкрдХреЛ рддрд╛рд░ рдФрд░ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЪрд░рд┐рддреНрд░ рдЪреБрдирдиреЗ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рджреЗрддрд╛ рд╣реИред

 print q {   ! }; (my $text = "ab c") =~ s{\s}{}g; 


Perl рдХреА рдПрдХ рдФрд░ рдмрд╣реБрдд рд╣реА рдЙрдкрдпреЛрдЧреА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдПрд╕реНрдХреЗрдк рдЪрд░рд┐рддреНрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдкрд░реНрд▓ рд╢реЗрд▓ рдореЗрдВ рдЗрд╕ рд▓рд╛рдЗрди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХрдорд╛рдВрдб рдХрд╛ рдкрд░рд┐рдгрд╛рдо рджреЗрддрд╛ рд╣реИред

 print `uptime`; #    print << `EOC`; #   pwd ls -l EOC 


(*) рдкрд░реНрд▓ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╕рдмрд░реВрдЯреАрди рд╡рд┐рд╢реЗрд╖рддрд╛ рддрдВрддреНрд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЬрд╛рд╡рд╛ рд╕реЗ рдПрдиреЛрдЯреЗрд╢рди рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рджреГрд╢реНрдп рдЖрдХрд░реНрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЧреБрдг рдЙрдкрдирд┐рд╡реЗрд╢ рдШреЛрд╖рдгрд╛ рдореЗрдВ рдПрдХ рдмреГрд╣рджрд╛рдиреНрддреНрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЖрдк рдХрд┐рд╕реА рднреА рдмрд╣реБ-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдореЗрдВ рдмрд┐рд▓реНрдЯ-рдЗрди рдПрдЯреНрд░рд┐рдмреНрдпреВрдЯ рдореЗрдердб рдФрд░ рд▓реИрд╡рд▓реНрдпреВ рднреА рд╣реИрдВ ред рдЕрджреНрднреБрдд рд▓реИрд╡рд▓реНрдпреВ рд╡рд┐рд╢реЗрд╖рддрд╛ рдПрдХ рд╕рдмрд░реВрдЯреАрди рдХреЛ рдПрдХ рд▓реИрд╡рд▓реНрдпреВ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХ рд╣реА рджрд┐рдирдЪрд░реНрдпрд╛ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдФрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рддрд░реАрдХреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

 my $_name = '?'; sub name(;$): lvalue { $_name = shift || $_name } name = 'caiiiycuk'; print name(), "\n"; 


(*) рдЙрд▓реНрд▓реЗрдЦрдиреАрдп AUTOLOAD рддрдВрддреНрд░ рдЖрдкрдХреЛ рдЕрдШреЛрд╖рд┐рдд рд░реВрдЯреАрди рдкрд░ рдХреЙрд▓ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдХреНрд╕рд░ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рднрд╛рдЧреЛрдВ рдореЗрдВ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдкрд░реНрд▓ рдХреЛ рд╕рдмрд░реВрдЯреАрди рдШреЛрд╖рдгрд╛ рдирд╣реАрдВ рдорд┐рд▓реА рд╣реИ, рддреЛ рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреЗ рд╕рд╛рде рдСрдЯреЛрд▓реЙрдб рдХреЙрд▓ рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдЕрдЧрд░ рдпрд╣ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХ рджреЗрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, AUTOLOAD рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рд╕рд┐рд╕реНрдЯрдо рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдкрд╖реНрдЯ рдХреЙрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рд╡реЗ рд╕реНрд╡рдпрдВ рдкрд░реНрд▓ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рд╣реИрдВ (рдЬреИрд╕рд╛ рдХрд┐ рд╢реЗрд▓ рдореЙрдбреНрдпреВрд▓ рдХрд░рддрд╛ рд╣реИ)ред

 use strict; sub AUTOLOAD { my $program = our $AUTOLOAD; $program =~ s/.*:://; system($program, @_); } sub uptime(); sub echo(@); uptime; echo "AUTOLOAD"; 


(*) рдЯрд╛рдИ - рд╕реНрдХреЗрд▓рд░реНрд╕, рд╕рд░рдгрд┐рдпреЛрдВ рдФрд░ рд╣реИрд╢ рдХреЗ рдЖрдВрддрд░рд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдЬрдЧрд╣ рдХреЗ рд▓рд┐рдП рдПрдХ рддрдВрддреНрд░ред рдЗрд╕ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдХрд┐рд╕реА рд╕рд░рдгреА рдпрд╛ рд╣реИрд╢ рдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рд╕реАрдзреЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рд╕реА рднреА рдкрдврд╝рдиреЗ рдФрд░ рд▓рд┐рдЦрдиреЗ / рд╕реЗ рдЗрд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рддрдХрдиреАрдХ рдХрд╛ рдПрдХ рдЕрдиреНрдп рд╕рдВрднрд╛рд╡рд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЖрд╡рдВрдЯрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

(*) рдкрд░реНрд▓ рджреЛ рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдореЙрдбрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ: рдПрдХ рдереНрд░реЗрдб рдореЙрдбрд▓ рдФрд░ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЙрдбрд▓ред рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЙрдбрд▓ рдореЗрдВ рд╕рдорд╛рдирд╛рдВрддрд░ рдбреЗрдЯрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдореВрд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдбреЗрдЯрд╛ рдХреА рдкреВрд░реА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдХреЗ рд╕рд╛рде рдПрдХ рдирдИ рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╢рд╛рдорд┐рд▓ рд╣реИред рдпрд╣ рдХрд╛рдВрдЯрд╛ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдПрдХ рд╡реАрд░ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд╕рд╛рде, рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЙрдбрд▓ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рд╕рдорд░реНрдерд┐рдд рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЙрдбрд▓ * рдирд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╣реИред рдирдВрдЧреЗ рдХрд╛рдВрдЯреЗ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реИ, CPAN рдлреЛрд░реНрдХ рдХреЗ рдЖрд╕рд╛рди рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рд╕реЗ рднрд░рд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ:

 use strict; use Proc::Fork; run_fork { child { print "Process 1\n" while 1; } parent { print "Process 2\n" while 1; } } 


рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЙрдбрд▓ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдереНрд░реЗрдб рдореЙрдбрд▓ рдмрд╛рд╣рд░ рдЦрдбрд╝рд╛ рд╣реИ, рдЗрди рдзрд╛рд░рд╛рдУрдВ рдиреЗ рд╕рднреА рдбреЗрдЯрд╛ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рд╕рд╛рдЭрд╛ рдХреА рд╣реИ, рдРрд╕реА рдзрд╛рд░рд╛рдПрдВ рдЬрд╛рд╡рд╛ рд╕реНрдЯреНрд░реАрдо рдХреЗ рд╕рдорд╛рди рд╣реИрдВред рдереНрд░реЗрдб рд╕рдкреЛрд░реНрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдереНрд░реЗрдб рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдПрд╕рдХреНрдпреВрдПрди рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рд╕реНрдкрд╖реНрдЯ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред

 use Thread 'async'; my $thread1 = async { sleep 5; return 1; }; my $thread2 = async { sleep 2; return 2; }; print $thread1->join(), "\n"; print $thread2->join(), "\n"; 


рдереНрд░реЗрдбреНрд╕ рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: рдореНрдпреВрдЯреЗрдХреНрд╕, рд╕реЗрдорд╛рдлреЛрд░рд╕, рд╕реЛрддреЗ рд╣реБрдП рдЧрд┐рд░рдирд╛ рдФрд░ рд╕реНрдерд┐рддрд┐ рд╕реЗ рдереНрд░реЗрдбрд┐рдВрдЧ рдЬрд╛рдЧрдирд╛ред

(*) рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдкреИрдХ / рдЕрдирдкреИрдХ рдлрд╝рдВрдХреНрд╢рди рдЖрдкрдХреЛ рдкрд░реНрд▓ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдмрд╛рдЗрдЯ рд╕рд░рдгреА рдореЗрдВ рдмрджрд▓рдиреЗ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдмрд╛рдЗрдирд░реА рдбреЗрдЯрд╛ рдХреЛ рдкрдврд╝рдиреЗ рдФрд░ рдЙрдирдХреЗ рдордирдорд╛рдиреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рд╣реА рдЙрдкрдпреЛрдЧреА рдЪреАрдЬред

(*) рдУрдУрдкреА рдФрд░ рдкрд░реНрд▓, рд╢рд╛рдпрдж рдпрд╣ рдПрдХрдорд╛рддреНрд░ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдорд┐рд╢реНрд░рд┐рдд рднрд╛рд╡рдирд╛рдПрдВ рдмрдирд╛рддреА рд╣реИред рдпрд╣ рдмрд╣реБрдд рдХреБрдЫ рд╡реИрд╕рд╛ рд╣реА рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ, рдЗрд╕ рддрд░рд╣, рднрд╛рд╖рд╛ рдореЗрдВ рдУрдУрдкреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рднреА рдУрдУрдкреА рдкреНрд░рддрд┐рдорд╛рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдФрд░ рдХрд╛рдлреА рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрднреА-рдХрднреА рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреА рдмреИрд╕рд╛рдЦреА рдХреА рднрд╛рд╡рдирд╛ рдЖрддреА рд╣реИред рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд┐рд╕реА рднреА рд╕реНрдХреЗрд▓рд░, рд╕рд░рдгреА рдпрд╛ рд╣реИрд╢ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИредрдПрдХ рд╡рд┐рд╢реЗрд╖ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рд▓рд┐рдВрдХ рдСрдмреНрдЬреЗрдХреНрдЯ ( рдЖрд╢реАрд░реНрд╡рд╛рдж ) рдореЗрдВ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ , рдЗрд╕ рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд╛рдж рдкрд░реНрд▓ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд▓рд┐рдВрдХ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИред рдЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЛ рдЙрд╕ рдкреИрдХреЗрдЬ рдореЗрдВ рдорд╛рдВрдЧрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдореЗрдВ рд▓рд┐рдВрдХ рдзрдиреНрдп рдерд╛ред рддрджрдиреБрд╕рд╛рд░, рдПрдХ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреА рдХреЛрдИ рд╢рд╛рд╕реНрддреНрд░реАрдп рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реИ, рдПрдХ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХрд┐рд╕реА рднреА рдЙрдк-рдкреНрд░рдХрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдзрдиреНрдп рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдПрдВ рджреЗрддрд╛ рд╣реИред рдкрд░реНрд▓ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдХреЙрд▓рд┐рдВрдЧ рддрд░реАрдХреЛрдВ рдХрд╛ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ; рдЗрд╕ рд░реВрдк рдореЗрдВ, рд╡рд┐рдзрд┐ рдкрд╣рд▓реЗ рдЖрддреА рд╣реИ, рдлрд┐рд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рд╕рдВрджрд░реНрдн, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рд╡рд┐рдзрд┐ рдХреЗ рддрд░реНрдХред рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ, рдирдИ рдкрджреНрдзрддрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдЖрдкрдХреЛ рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рдпрдорд┐рдд рддрд░реАрдХреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╕рдордп, рд▓реЗрдЦрди рдХрд╛ рдпрд╣ рд░реВрдк рдЕрдЬреАрдм рд▓рдЧ рд╕рдХрддрд╛ рд╣реИред

 { package Dog; sub new { my $class = shift; return bless { name => shift }, $class; } sub gav { my $self = shift; print "$self->{name}: gav\n"; } } { my $dog = Dog->new('Mona'); $dog->gav(); } { my $dog = new Dog 'Sharik'; gav $dog; } 


рдкрд░реНрд▓ рдореЗрдВ рдУрдУрдкреА рдХрдИ рд╡рд┐рд░рд╛рд╕рдд рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧ рдлрд╝реАрд▓реНрдбреНрд╕ рдкреНрд░рд╛рдЧреНрдорд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЫрджреНрдо рд╣реИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрдХрд▓рди рдЪрд░рдг рдореЗрдВ рдХреНрд▓рд╛рд╕ рдлрд╝реАрд▓реНрдб рдкрд░ рдХреЙрд▓ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдирд┐рдЬреА рдХреНрд▓рд╛рд╕ рдбреЗрдЯрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ред

 { package Foo; use fields qw(foo); sub new { my Foo $self = shift; $self = fields::new($self); $self->{foo} = 10; return $self; } } my Foo $var = Foo->new; $var->{foo} = 42; # :     $var->{zap} = 42; 


рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдХреНрд▓рд╛рд╕ рдХреЗ рддрд░реАрдХреЛрдВ рдореЗрдВ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рд╡рд┐рдзрд┐ рдХреЙрд▓ рдФрд░ рдкрд╛рд╕рд┐рдВрдЧ рддрд░реНрдХреЛрдВ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЦреЛ рджреЗрддреЗ рд╣реИрдВ, рдЬреЛ рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╣реИред рдкрд░реНрд▓ рдСрдмреНрдЬреЗрдХреНрдЯ рдбрд┐рд╕реНрдЯреНрд░рдХреНрдЯрд░реНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

(*) рдПрдХ рд╡рд┐рд╢реЗрд╖ рд▓реЗрдмрд▓ __DATA__ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдЕрдВрдд рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЗрд╕ рд▓реЗрдмрд▓ рдХреЗ рдмрд╛рдж рдХреЗ рд╕рднреА рдкрд╛рда рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢реЗрд╖ рдлрд╝рд╛рдЗрд▓ рд╡рд┐рд╡рд░рдгрдХ рдбреЗрдЯрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред рдпрд╣ рдЫреЛрдЯреЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдЬрдм рдбреЗрдЯрд╛ рдФрд░ рдкрд░реАрдХреНрд╖рдг рд╣реА рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкрд░реНрд▓ рдореЗрдВ рд╕рдВрдкреВрд░реНрдг рдкрд░реАрдХреНрд╖рдг рдкреНрд░рдгрд╛рд▓реА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рдЬреЛ рд╕рднреА рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╣реИред

 use strict; my @content = <DATA>; print join '', @content; __DATA__ A B C 


(*) рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкрд░реНрд▓ рдХрдорд╛рдВрдб рдХреЗ рдЭрдВрдбреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдпрдерд╛рд╕рдВрднрд╡ рдХрдо-рд╕реЗ-рдХрдо рдПрдХрд▓-рдкрдВрдХреНрддрд┐ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, -n рдзреНрд╡рдЬ рдереЛрдбрд╝реА рджреЗрд░ (<>) рд▓реВрдк рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рдкреЗрдЯрддрд╛ рд╣реИ , рдЬрд┐рд╕рдХреА рд╣рдордиреЗ рдкрд╣рд▓реЗ рдЬрд╛рдВрдЪ рдХреА рдереАред рдпрд╣реА рд╣реИ, рдмрд┐рд▓реНрд▓реА рдХрд╛ рдПрдирд╛рд▓реЙрдЧ рдЗрд╕ рддрд░рд╣ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

 perl -ne "print;" file1 file2 ... fileN 


(*) рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдПрдХ рдмрд╣реБрдд рд╣реА рджрд┐рд▓рдЪрд╕реНрдк рдЕрд╡рд╕рд░ред рдХреЛрдб рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдкрд░реНрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕реНрдЯреЗрдЯрдореЗрдВрдЯреНрд╕ рдХрд╛ рдПрдХ рдЧреНрд░рд╛рдл рд╣реИред рдпрд╣ рдЧреНрд░рд╛рдлрд╝ рд╕рд╛рдорд╛рдиреНрдп рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рдкрд░реНрд▓ рджреБрднрд╛рд╖рд┐рдпрд╛ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдк рдЗрд╕ рдЧреНрд░рд╛рдлрд╝ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд░рдХреЗ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдмрд╕ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреВрд░реЗ рдЧреНрд░рд╛рдлрд╝ рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рджреВрд╕рд░реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрдХрд▓рди рдЪрд░рдг рдХреЛ рдЫреЛрдбрд╝ рдХрд░ рдЗрд╕реЗ рдкрд░реНрд▓ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдореЗрдВ рдкрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рддрдХрдиреАрдХ рдХрд╛ рдПрдХ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкрд░реНрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕реЗ рд╕реА рдпрд╛ рд╕реА ++ рдХреЛрдб рдХреА рдкреАрдврд╝реА рд╣реИред рдЬрдирд░реЗрдЯрд░ рдмреА :: рд╕реА рдФрд░ рдмреА :: рд╕реАрд╕реАрдХреЗрд╡рд▓ рдЙрд╕ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ, рдЬрдм рдкрд░реНрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рд▓рдХреНрд╖реНрдп рднрд╛рд╖рд╛ рдореЗрдВ рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдЙрдиреНрд╣реЗрдВ рдорд╢реАрди рдХреЛрдб рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдкрд░реНрд▓ рдЗрдВрдЯрд░рдкреНрд░реЗрдЯрд░ рдХреЗ рдмрд┐рдирд╛ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд░реНрд▓ рдореЗрдВ рдХреЛрдб рдлрд╝рд┐рд▓реНрдЯрд░ рднреА рд╣реИрдВ, рд╡реЗ рдЖрдкрдХреЛ рд╕рдВрдХрд▓рди рдФрд░ рд╡реНрдпрд╛рдЦреНрдпрд╛ рд╕реЗ рдкрд╣рд▓реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рдЖрдк рдЕрдкрдиреА рднрд╛рд╖рд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВред

(*)рдЯреИрдЧ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдореЛрдбред рдЗрд╕ рдореЛрдб рдореЗрдВ рд░рд╣рддреЗ рд╣реБрдП, рдкрд░реНрд▓ рд╕реНрдкрд╖реНрдЯ рдФрд░ рдЫрд┐рдкреЗ рд╣реБрдП рд╕реБрд░рдХреНрд╖рд╛ рдЫреЗрдж рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд╕рд╛рд╡рдзрд╛рдиреА рдмрд░рддрддреЗ рд╣реИрдВред рд╕рд┐рджреНрдзрд╛рдВрдд рд╕рд░рд▓ рд╣реИ: рдЖрдк рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рдмрд╛рд╣рд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рд╕реА рдФрд░ рдЪреАрдЬ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдЬреЛ рдЗрд╕рдХреЗ рдмрд╛рд╣рд░ рд╣реИред рдмрд╛рд╣рд░ рд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдИ рднреА рдбреЗрдЯрд╛ рд╕рдВрджрд┐рдЧреНрдз рдореВрд▓ рдХреЗ рдбреЗрдЯрд╛ рдХреЗ рд░реВрдк рдореЗрдВ "рдЪрд┐рд╣реНрдирд┐рдд" рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдмрд▓ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рддреНрдпрдХреНрд╖ рдпрд╛ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рднреА рдСрдкрд░реЗрд╢рди рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ "рд╢реЗрд▓" рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдлрд╛рдЗрд▓реЛрдВ, рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдпрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рдСрдкрд░реЗрд╢рди рдореЗрдВред рдЗрд╕рд▓рд┐рдП, рдХрдИ рд╕реБрд░рдХреНрд╖рд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рддреЗ рд╕рдордп рд▓реЗрдмрд▓ рдбреЗрдЯрд╛ рдореЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдЕрдЪреНрдЫрд╛ рд░реВрдк рд╣реИред рдРрд╕реЗ рдореЙрдбреНрдпреВрд▓ рд╣реИрдВ рдЬреЛ рд╕реБрд░рдХреНрд╖рд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдФрд░ рднреА рдЖрдЧреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реБрд░рдХреНрд╖рд┐рдд рдореЙрдбреНрдпреВрд▓ред

 #!/usr/bin/perl -T use strict; print "Enter file/directory name to delete: \n"; my $file = <STDIN>; # :   ,    #    `rm -rf $file`; 


(*) PSGI / Plack рдПрдХ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╣реИ рдЬреЛ рд╡реЗрдм рд╕рд░реНрд╡рд░ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЛ рд╡реЗрдм рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛрдб рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕реАрдзреЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдХрд╣реЗрдВ, рдпрд╣ рдЬрд╛рд╡рд╛ рджреБрдирд┐рдпрд╛ рд╕реЗ рдПрдХ рд╕рд░реНрд╡рд▓реЗрдЯ рдХрдВрдЯреЗрдирд░ рдХреА рддрд░рд╣ рд╣реИред рд╣рдо рдЗрд╕ рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдкреАрдПрд╕рдЬреАрдЖрдИ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╕рд░реНрд╡рд░ рдкрд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХрдИ рдмреЗрд╣рддрд░реАрди рд╣реИрдВред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА ред

(*) рдФрд░ рдкрд░реНрд▓ рд╕реБрдЦрдж рднрд╛рд╡рдирд╛рдУрдВ рдХрд╛ рдПрдХ рд╕рдореБрджреНрд░ рд╣реИ, рдЬреЛ ACME рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, ACME :: EyeDrops рдореЙрдбреНрдпреВрд▓ рдЖрдкрдХреЛ рдкрд░реНрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ ASCII рдХрд▓рд╛ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдПрдХ рдмрдлреА рдлреИрди рдореЙрдбреНрдпреВрд▓ рд╣реИ , рдЬрд┐рд╕рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗрд╡рд▓ рдмрдлреА рд╢рдмреНрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдареАрдХ рд╣реИ, ACME :: ChuckNorris рдореЙрдбреНрдпреВрд▓ рдЦреБрдж рдХреЗ рд▓рд┐рдП рдмреЛрд▓рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд░реНрд▓ рдХрд╡рд┐рддрд╛ рд╣реИ - рдпрд╣ рдкрд░реНрд▓ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реИрдз рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ, рдФрд░ рдорд╛рдирд╡ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдХрд╡рд┐рддрд╛ рдЗрд╕ рд▓реЗрдЦ рдХреЗ рд╢реАрд░реНрд╖рдХ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред

рдмреЙрди рдпрд╛рддреНрд░рд╛!

1 рдЗрд╕рд▓рд┐рдП рдореЗрд░рд╛ рдкрд░реНрд▓ рд╕реЛрдЪрддрд╛ рд╣реИ, рдЖрдк рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВ TIMTOWTDI
2 рдореЗрд░реА рд░рд╛рдп рдкрд░реНрд▓ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ

Source: https://habr.com/ru/post/In155461/


All Articles