Perl ํ๋ก์ ํธ ๊ด๋ฆฌ ์์ํ๋ Perl 5 ๋ธ๋์น์ ์ถ๊ฐ ๊ฐ๋ฐ๊ณผ Perl 7 ๋ธ๋์น ์์ฑ์ ์ํ ๊ณํ์ ์ค๋ช ํ์ต๋๋ค. ํ ๋ก ์ค์ ๊ด๋ฆฌ ์์ํ๋ ์ด๋ฏธ Perl 5์ฉ์ผ๋ก ์์ฑ๋ ์ฝ๋์์ ํธํ์ฑ์ ๊นจ๋จ๋ฆฌ๋ ๊ฒ์ ํ์ฉ๋์ง ์๋๋ค๋ ๋ฐ ๋์ํ์ต๋๋ค. ์ทจ์ฝ์ ์ ์์ ํ๋ ค๋ฉด ํธํ์ฑ์ด ํ์ํฉ๋๋ค. ์์ํ๋ ๋ํ ์๋ก์ด ํ์ ์ ๋ ์ฝ๊ฒ ์ ๊ทผํ๊ณ ์ฑํ์ ์ฅ๋ คํ๋ ๋์์ ์ธ์ด๊ฐ ๋ฐ์ ํ๊ณ ์๋ก์ด ๊ธฐ๋ฅ์ ๋์ฑ ์ง์ค์ ์ผ๋ก ํ๋ณดํด์ผ ํ๋ค๊ณ ๊ฒฐ๋ก ์ง์์ต๋๋ค.
์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ๊นจ๋จ๋ฆฌ๋ ๋ณ๊ฒฝ ์ฌํญ์ Perl 7 ๋ธ๋์น์ ๊ธฐ๋ณธ์ ์ผ๋ก ํฌํจ์ํค๋ ค๋ ์๋ ์๋์๋ ๋ฌ๋ฆฌ, ์๋ก์ด ๊ณํ์ ๊ธฐ์กด ์ฝ๋์์ ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ๊นจ๋จ๋ฆฌ์ง ์๊ณ Perl 5 ๋ธ๋์น๋ฅผ Perl 7๋ก ์ ์ง์ ์ผ๋ก ์ ํํ๋ ๊ฒ์ ๋๋ค. Perl 7.0 ๋ฆด๋ฆฌ์ค๋ ๋ค์ Perl 5.xx ๋ถ๊ธฐ์ ๊ฐ๋ ์ ์ผ๋ก ๋ค๋ฅด์ง ์์ต๋๋ค.
Perl 5์ ์ ๋ฆด๋ฆฌ์ค ๊ฐ๋ฐ์ ์ด์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ๊ณ์๋ฉ๋๋ค. ์ด์ ์ฝ๋์ ํธํ๋์ง ์๋ ๋ถ๊ธฐ์ ์ถ๊ฐ๋ ์๋ก์ด ๊ธฐ๋ฅ์ ์ด์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก "๋ฒ์ ์ฌ์ฉ" ๋๋ "๊ธฐ๋ฅ ๊ธฐ๋ฅ ์ฌ์ฉ" pragma๊ฐ ๋ช ์์ ์ผ๋ก ์ง์ ๋ ๊ฒฝ์ฐ์๋ง ํฌํจ๋ฉ๋๋ค. ์ฝ๋์์. ์๋ฅผ ๋ค์ด, Perl 5.010์์๋ "say"๋ผ๋ ์๋ก์ด ํค์๋๊ฐ ๋์ ๋์์ง๋ง ๊ธฐ์กด ์ฝ๋์์๋ "say"๋ผ๋ ํจ์๋ฅผ ์ฌ์ฉํ ์ ์์๊ธฐ ๋๋ฌธ์ ์ ํค์๋์ ๋ํ ์ง์์ "'say' ๊ธฐ๋ฅ ์ฌ์ฉ" pragma๋ฅผ ๋ช ์์ ์ผ๋ก ์ง์ ํด์ผ๋ง ํ์ฑํ๋์์ต๋๋ค.
์ด์ ๋ฆด๋ฆฌ์ค์์ ์ฒ๋ฆฌํ ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ ์ธ์ด์ ์ถ๊ฐ๋ ์๋ก์ด ๊ตฌ๋ฌธ์ ํน๋ณํ pragma๋ฅผ ์ง์ ํ ํ์ ์์ด ์ฆ์ ์ฌ์ฉํ ์ ์๊ฒ ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, Perl 5.36์์๋ ์ฌ๋ฌ ๋ชฉ๋ก ๊ฐ์ ํ ๋ฒ์ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๋จ์ํ๋ ๊ตฌ๋ฌธ(โforeach my ($key, $value) (%hash) {โ)์ ๋์ ํ์ฌ โuseโ๊ฐ ์๋ ์ฝ๋์์๋ ์ฆ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. v5.36โ ํ๋ผ๊ทธ๋ง.
ํ์ฌ ํ์์์ Perl 5.36์ "use v5.36" pragma๋ฅผ ์ฌ์ฉํ์ฌ 13๊ฐ์ ์ํธ ์ด์ฉ์ฑ์ ๋ฐฉํดํ๋ ๊ธฐ๋ฅ('say', 'state', 'current_sub', 'fc', 'lexical_subs', 'signatures', 'isa)์ ํ์ฑํํฉ๋๋ค. ', ' bareword_filehandles', 'bitwise', 'evalbytes', 'postderef_qq', 'unicode_eval' ๋ฐ 'unicode_strings'), ๊ธฐ๋ณธ์ ์ผ๋ก "์๊ฒฉํ ์ฌ์ฉ" ๋ฐ "๊ฒฝ๊ณ ์ฌ์ฉ" ๋ชจ๋๋ฅผ ํ์ฑํํ๊ณ ๋ ๊ฑฐ์ ๊ฐ์ ํ๊ธฐ๋ฒ์ ๋ํ ์ง์์ ๋นํ์ฑํํฉ๋๋ค. ๊ฐ์ฒด ํธ์ถ("- >" ๋์ ๊ณต๋ฐฑ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ) ๋ฐ Perl 4 ์คํ์ผ ๋ค์ฐจ์ ๋ฐฐ์ด ๋ฐ ํด์("$hash{1, 2}").
์ถฉ๋ถํ ๋ณ๊ฒฝ ์ฌํญ์ด ๋์ ๋๋ฉด Perl 5.x์ ๋ค์ ๋ฆด๋ฆฌ์ค ๋์ Perl 7.0 ๋ฒ์ ์ด ์์ฑ๋ฉ๋๋ค. ์ด๋ ์ผ์ข
์ ์ํ ์ค๋
์ท์ด ๋์ง๋ง Perl 5์ ์์ ํ ์ญํธํ๋๋ ์ํ๋ฅผ ์ ์งํฉ๋๋ค. ๋ณ๊ฒฝ ๋ฐ ์ค์ ์ ํ์ฑํํ๋ ค๋ฉด ํธํ์ฑ์ด ์์๋๋ฉด ์ฝ๋์ "use v7" pragma๋ฅผ ๋ช
์์ ์ผ๋ก ์ถ๊ฐํด์ผ ํฉ๋๋ค. . ์ ๊ฒ๋ค. "use v7" pragma๊ฐ ์๋ ์ฝ๋๋ ํธํ์ฑ์ ๊นจ๋ ์ธ์ด ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ "ํ๋์ ์ธ Perl"๋ก ์ฒ๋ฆฌ๋ ์ ์์ผ๋ฉฐ, "๋ณด์์ ์ธ Perl"์ด ์์ผ๋ฉด ์ด์ ๋ฆด๋ฆฌ์ค์ ์์ ํ ์ญํธํ๋๋ ์ํ๋ก ์ ์ง๋ฉ๋๋ค.
์ถ์ฒ : opennet.ru