Perl 7 පසුගාමී ගැළපුම බිඳ දැමීමකින් තොරව Perl 5 හි සංවර්ධනය බාධාවකින් තොරව කරගෙන යනු ඇත

Perl ව්‍යාපෘති පාලක කවුන්සිලය Perl 5 ශාඛාව තවදුරටත් සංවර්ධනය කිරීම සහ Perl 7 ශාඛාවක් නිර්මාණය කිරීම සඳහා සැලසුම් ගෙනහැර දැක්වීය.සාකච්ඡා අතරතුරදී, පාලක කවුන්සිලය එකඟ වූයේ Perl 5 සඳහා දැනටමත් ලියා ඇති කේතය සමඟ ගැළපීම බිඳ දැමීම මිස, කැඩීම පිළිගත නොහැකි බවයි. දුර්වලතා නිවැරදි කිරීම සඳහා අනුකූලතාව අවශ්ය වේ. නැඟී එන නවෝත්පාදනයන් වෙත ප්‍රවේශ වීම පහසු කරවීම සහ හදා ගැනීම දිරිමත් කරන අතරම, භාෂාව පරිණාමය විය යුතු අතර නව විශේෂාංග වඩාත් තීව්‍ර ලෙස ප්‍රවර්ධනය කළ යුතු බව කවුන්සිලය නිගමනය කළේය.

Perl 7 ශාඛාවේ පෙරනිමියෙන් පසුපසට ගැළපෙන වෙනස්කම් ඇතුළත් කිරීමට ඉඩ දීමේ මුල් අභිප්‍රායන් මෙන් නොව, නව සැලසුම වන්නේ පවතින කේතය සමඟ පසුගාමී අනුකූලතාව බිඳ නොගෙන ක්‍රමයෙන් Perl 5 ශාඛාව Perl 7 වෙත මාරු කිරීමයි. Perl 7.0 නිකුතුව මීළඟ Perl 5.xx ශාඛාවෙන් සංකල්පමය වශයෙන් වෙනස් නොවේ.

Perl 5 හි නව නිකුතු සංවර්ධනය පෙර පරිදිම සිදුවනු ඇත - පැරණි කේතය සමඟ නොගැලපෙන ශාඛාවට එකතු කරන ලද නව විශේෂාංග, පෙර පරිදිම ඇතුළත් වනු ඇත්තේ, "භාවිත අනුවාදය" හෝ "භාවිත විශේෂාංගය" ප්‍රයෝගය පැහැදිලිව සඳහන් කර ඇත්නම් පමණි. කේතය තුළ. උදාහරණයක් ලෙස, Perl 5.010 විසින් "say" යන නව මූල පදයක් හඳුන්වා දෙන ලදී, නමුත් පවතින කේතය "say" නම් ශ්‍රිත භාවිතා කළ හැකි බැවින්, නව මූල පදය සඳහා සහය සක්‍රීය කර ඇත්තේ "භාවිත විශේෂාංගය 'say'" ප්‍රයෝගය පැහැදිලිව සඳහන් කිරීමෙන් පමණි.

භාෂාවට එකතු කරන ලද නව වාක්‍ය ඛණ්ඩය, පෙර නිකුතුවල සකසන විට දෝෂයකට තුඩු දුන් අතර, විශේෂ ප්‍රග්මා නියම කිරීමකින් තොරව වහාම ලබා ගත හැකිය. උදාහරණයක් ලෙස, Perl 5.36 විසින් එකවර බහුවිධ ලැයිස්තු අගයන් සැකසීම සඳහා සරල කළ වාක්‍ය ඛණ්ඩයක් හඳුන්වා දෙනු ඇත ("මගේ ($key, $value) (%hash) {") එය "භාවිතා කිරීමකින් තොරව කේතයෙන් පවා ක්ෂණිකව ලබා ගත හැක. v5.36" ප්‍රයෝගය.

එහි වර්තමාන ස්වරූපයෙන්, Perl 5.36 අන්තර් ක්‍රියාකාරීත්වය බිඳීමේ විශේෂාංග 5.36 ක් සක්‍රීය කිරීමට "v13 භාවිතා කරන්න" ප්‍රග්මාව භාවිතා කරයි ('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 සමඟ සම්පුර්ණයෙන්ම පසුගාමී අනුකූලව පවතිනු ඇත. වෙනස්කම් සහ සැකසුම් සක්‍රීය කිරීමට ගැළපුම බිඳීමට, ඔබට “v7 භාවිතා කරන්න” ප්‍රග්මාව කේතයට පැහැදිලිව එක් කිරීමට අවශ්‍ය වනු ඇත. . එම. "use v7" ප්‍රාග්මාව සහිත කේතය "නූතන පර්ල්" ලෙස සැලකිය හැක, එහි ගැළපුම බිඳී යන භාෂා වෙනස්වීම් ලබා ගත හැකි අතර, නැතිව - "කොන්සර්වේටිව් පර්ල්", අතීත නිකුතු සමඟ සම්පුර්ණයෙන්ම පසුගාමීව පවතිනු ඇත.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න