ಪರ್ಲ್ 7 ಘೋಷಿಸಿತು

ಪರ್ಲ್ ಭಾಷಾ ಅಭಿವರ್ಧಕರ ಇಂದಿನ ವರ್ಚುವಲ್ ಸಮ್ಮೇಳನದಲ್ಲಿ ಘೋಷಿಸಲಾಗಿದೆ ಪರ್ಲ್ 7 ಯೋಜನೆಯು ಆಮೂಲಾಗ್ರ ಬದಲಾವಣೆಗಳನ್ನು ಮಾಡದೆಯೇ ಪರ್ಲ್ 5 ಶಾಖೆಯ ಅಭಿವೃದ್ಧಿಯನ್ನು ಸರಾಗವಾಗಿ ಮುಂದುವರಿಸುತ್ತದೆ. Perl 7 ಇದೇ ರೀತಿಯ ಬಿಡುಗಡೆಯಾಗಿದೆ ಪರ್ಲ್ 5.32.0, ಆಧುನಿಕ ಅಭಿವೃದ್ಧಿ ಅಭ್ಯಾಸಗಳೊಂದಿಗೆ ಹೆಚ್ಚು ಸ್ಥಿರವಾಗಿರುವ ಇತರ ಡೀಫಾಲ್ಟ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಹೊರತುಪಡಿಸಿ. ಇಲ್ಲದಿದ್ದರೆ, ಪರ್ಲ್ 7 ಪರ್ಲ್ 5 ರಂತೆ ಉಳಿಯುತ್ತದೆ ಮತ್ತು ಹಿಂದೆ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳೊಂದಿಗೆ ಹೊಂದಿಕೊಳ್ಳುತ್ತದೆ.

ಆವೃತ್ತಿ ಸಂಖ್ಯೆಯಲ್ಲಿನ ಗಮನಾರ್ಹ ಬದಲಾವಣೆಯು ಹಿಂದುಳಿದ ಹೊಂದಾಣಿಕೆಯ ಗಮನಾರ್ಹ ಉಲ್ಲಂಘನೆಯಿಲ್ಲದೆ ಪರ್ಲ್ ಭಾಷೆಯ ಕಾರ್ಯವನ್ನು ಹೆಚ್ಚಿಸಲು ಹೊಸ ಮಾದರಿಗೆ ಪರಿವರ್ತನೆಗಾಗಿ ಒಂದು ರೀತಿಯ ವಿಭಜಕವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ.
Perl 7 ರ ಬಿಡುಗಡೆಯು ಪರ್ಲ್‌ಗೆ ಹೊಸ ಡೆವಲಪರ್‌ಗಳನ್ನು ಆಕರ್ಷಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ ಮತ್ತು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಯೋಜನೆಗಳ ಕೋಡ್ ಬೇಸ್‌ನೊಂದಿಗೆ ಹೊಂದಾಣಿಕೆಯನ್ನು ಉಳಿಸಿಕೊಂಡು ಭಾಷೆಗೆ ಗಮನಾರ್ಹವಾದ ಹೊಸ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸೇರಿಸುವ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಸುಗಮಗೊಳಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಈಗಿರುವ ಭಾಷೆಯನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲು ಪರ್ಲ್ 7 ಅನ್ನು ಬಳಸಿದ್ದರಿಂದ ಸಂಖ್ಯೆ 6 ಅನ್ನು ಆಯ್ಕೆ ಮಾಡಲಾಗಿದೆ ಅಭಿವೃದ್ಧಿ ಹೊಂದುತ್ತಿದೆ ರಾಕು ಎಂಬ ಪ್ರತ್ಯೇಕ ಹೆಸರಿನಲ್ಲಿ. ಪರ್ಲ್ 7 ನ ಮೊದಲ ಬಿಡುಗಡೆಯನ್ನು ಮುಂದಿನ ವರ್ಷ ನಿರೀಕ್ಷಿಸಲಾಗಿದೆ. Perl 5.32 ಶಾಖೆಯು Perl 5 ಸರಣಿಯಲ್ಲಿ ಕೊನೆಯದಾಗಿರುತ್ತದೆ ಮತ್ತು 5 ರಿಂದ 10 ವರ್ಷಗಳವರೆಗೆ ಬೆಂಬಲಿಸಲು ಯೋಜಿಸಲಾಗಿದೆ.

ಪರ್ಲ್ 7 ರಲ್ಲಿನ ಅತ್ಯಂತ ಗಮನಾರ್ಹ ಬದಲಾವಣೆಯೆಂದರೆ "ಕಟ್ಟುನಿಟ್ಟಾದ", ಇದು ವೇರಿಯಬಲ್ ಘೋಷಣೆಗಳ ಕಟ್ಟುನಿಟ್ಟಾದ ಪರಿಶೀಲನೆ, ಸಾಂಕೇತಿಕ ಪಾಯಿಂಟರ್‌ಗಳ ಬಳಕೆ ಮತ್ತು ಸಬ್‌ರುಟೀನ್ ಕಾರ್ಯಯೋಜನೆಗಳನ್ನು ಸೂಚಿಸುತ್ತದೆ. "ಕಟ್ಟುನಿಟ್ಟಾಗಿ ಬಳಸಿ" ಅನ್ನು ಬಳಸುವುದು ಉತ್ತಮ ರೂಪವಾಗಿದೆ ಮತ್ತು ಹೆಚ್ಚಿನ ಡೆವಲಪರ್‌ಗಳು ಇದನ್ನು ಬಳಸುತ್ತಾರೆ. ಅಂತೆಯೇ, ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ಅವರು ಎಚ್ಚರಿಕೆ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಯೋಜಿಸುತ್ತಾರೆ ("ಎಚ್ಚರಿಕೆಗಳನ್ನು ಬಳಸಿ")

Perl 7 ಸಹ ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಕೆಲವು ಪ್ರಾಯೋಗಿಕ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸ್ಥಿರಗೊಳಿಸಲು ಮತ್ತು ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ಸಕ್ರಿಯಗೊಳಿಸಲು ಆಶಿಸುತ್ತಿದೆ ಕಾರ್ಯ ಸಹಿಗಳು ("ವೈಶಿಷ್ಟ್ಯ 'ಸಹಿ' ಬಳಸಿ"), ಇದು ಕಾರ್ಯವನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುವಾಗ, ಒಳಬರುವ ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗಳನ್ನು ನಿರ್ಧರಿಸಲು ಮತ್ತು ಅವುಗಳ ಸಂಖ್ಯೆಯನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಪರಿಶೀಲಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ (ನೀವು "ಸಬ್ ಫೂ {" ಬದಲಿಗೆ "ಸಬ್ ಫೂ ($ಎಡ, $ಬಲ) {" ಎಂದು ಬರೆಯಬಹುದು. ನನ್ನ($ಎಡ, $ಬಲ) ) = @_;"). ಆಬ್ಜೆಕ್ಟ್ ಒಂದು ನಿರ್ದಿಷ್ಟ ವರ್ಗದ ನಿದರ್ಶನವೇ ಅಥವಾ ಅದರಿಂದ ಪಡೆದ ವರ್ಗವೇ ಎಂಬುದನ್ನು ಪರಿಶೀಲಿಸಲು "isa" ಆಪರೇಟರ್‌ಗೆ ಪೂರ್ವನಿಯೋಜಿತ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲು ಅವರು ಯೋಜಿಸಿದ್ದಾರೆ ("if( $obj isa Package::Name)", ಹಾಗೆಯೇ ಪೋಸ್ಟ್‌ಫಿಕ್ಸ್ ಡಿಫರೆನ್ಸಿಂಗ್ ಕಾರ್ಯಾಚರಣೆಗಳು (postderef) "${ $sref }" ಬದಲಿಗೆ "$ sref->$*", "@{ $aref }" ಬದಲಿಗೆ "$aref->@*" ಮತ್ತು "$href->%{ ... }" ಬದಲಿಗೆ "%$href{ ... } "

Perl 7 ರಲ್ಲಿ ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾದ ಸ್ಪರ್ಧಿಗಳು:

  • ಪರೋಕ್ಷ ವಸ್ತು ಕರೆ ಸಂಕೇತ ("ಯಾವುದೇ ವೈಶಿಷ್ಟ್ಯ qw (ಪರೋಕ್ಷ)") ಎಂಬುದು "->" ಬದಲಿಗೆ ಸ್ಪೇಸ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು ವಸ್ತುಗಳನ್ನು ಕರೆಯುವ ಒಂದು ಪರಂಪರೆಯ ವಿಧಾನವಾಗಿದೆ ("$object->$method(@param)" ಬದಲಿಗೆ "ಮೆಥಡ್ $object @param"). ಉದಾಹರಣೆಗೆ, "ನನ್ನ $cgi = ಹೊಸ CGI" ಬದಲಿಗೆ ನೀವು ಯಾವಾಗಲೂ "ನನ್ನ $cgi = CGI->ಹೊಸ" ಅನ್ನು ಬಳಸುತ್ತೀರಿ.
  • ಯಾವುದೇ ವೇರಿಯಬಲ್ ಘೋಷಣೆಗಳಿಲ್ಲದ ಬೇರ್ ಫೈಲ್ ಡಿಸ್ಕ್ರಿಪ್ಟರ್‌ಗಳು ("ಬೇರ್ವರ್ಡ್ ಇಲ್ಲ::ಫೈಲ್ ಹ್ಯಾಂಡಲ್") - "ಓಪನ್ ಎಫ್ಹೆಚ್, $ ಫೈಲ್" ನಂತಹ ನಿರ್ಮಾಣಗಳನ್ನು ಬಳಸುವುದು ದೋಷಕ್ಕೆ ಕಾರಣವಾಗುತ್ತದೆ, ನೀವು "ನನ್ನ $fh, $ ಫೈಲ್ ಅನ್ನು ತೆರೆಯಿರಿ" ಅನ್ನು ಬಳಸಬೇಕಾಗುತ್ತದೆ. ಬದಲಾವಣೆಯು ಪ್ರಮಾಣಿತ ಫೈಲ್ ವಿವರಣೆಗಳಾದ STDIN, STDOUT, STDERR, ARGV, ARGVOUT ಮತ್ತು DATA ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವುದಿಲ್ಲ.
  • ಪರ್ಲ್ 4 ಶೈಲಿಯ ನಕಲಿ ಬಹು ಆಯಾಮದ ಅರೇಗಳು ಮತ್ತು ಹ್ಯಾಶ್‌ಗಳು ("ಬಹು ಆಯಾಮಗಳಿಲ್ಲ")
    ಉದಾಹರಣೆಗೆ, "$hash{1, 2}" ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುವುದು ದೋಷಕ್ಕೆ ಕಾರಣವಾಗುತ್ತದೆ; ನೀವು ಮಧ್ಯಂತರ ಶ್ರೇಣಿಯನ್ನು ಬಳಸಬೇಕಾಗುತ್ತದೆ, ಉದಾಹರಣೆಗೆ "$hash{join($;, 1, 2)}".

  • ಪರ್ಲ್ 4 ಶೈಲಿಯಲ್ಲಿ ಮೂಲಮಾದರಿಗಳನ್ನು ಘೋಷಿಸುವುದು (ನೀವು "ಬಳಸಿ :ಪ್ರೋಟೋಟೈಪ್()" ಅನ್ನು ಬಳಸಬೇಕಾಗುತ್ತದೆ).

ಹೆಚ್ಚು ದೂರದ ಯೋಜನೆಗಳಲ್ಲಿ, ಅವರು ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ಯುನಿಕೋಡ್ ಬೆಂಬಲವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ನಿರೀಕ್ಷಿಸುತ್ತಾರೆ, ಇದು ಕೋಡ್‌ನಲ್ಲಿ "utf8 ಬಳಸಿ" ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುವುದರಿಂದ ಡೆವಲಪರ್‌ಗಳನ್ನು ಉಳಿಸುತ್ತದೆ. ಹೊಸ ಡೀಫಾಲ್ಟ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳೊಂದಿಗೆ ಸಮಸ್ಯೆಗಳನ್ನು ಹೊಂದಿರುವ ಮಾಡ್ಯೂಲ್‌ಗಳು ಮತ್ತು ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳಿಗಾಗಿ, ಕೋಡ್‌ಗೆ "ಯೂಸ್ ಕಾಂಪ್ಯಾಟ್:: ಪರ್ಲ್ 5" ಸಾಲನ್ನು ಸೇರಿಸುವ ಮೂಲಕ ಪರ್ಲ್ 5 ನಡವಳಿಕೆಗೆ ಹಿಂತಿರುಗಲು ಸಾಧ್ಯವಿದೆ. ವೈಯಕ್ತಿಕ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಸಹ ಉಳಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಪ್ರತ್ಯೇಕವಾಗಿ ಬದಲಾಯಿಸಬಹುದು.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ