ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಜೂಲಿಯಾ 1.9 ಲಭ್ಯವಿದೆ

ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆ, ಡೈನಾಮಿಕ್ ಟೈಪಿಂಗ್‌ಗೆ ಬೆಂಬಲ ಮತ್ತು ಸಮಾನಾಂತರ ಪ್ರೋಗ್ರಾಮಿಂಗ್‌ಗಾಗಿ ಅಂತರ್ನಿರ್ಮಿತ ಸಾಧನಗಳಂತಹ ಗುಣಗಳನ್ನು ಸಂಯೋಜಿಸುವ ಜೂಲಿಯಾ 1.9 ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ಬಿಡುಗಡೆಯನ್ನು ಪ್ರಕಟಿಸಲಾಗಿದೆ. ಜೂಲಿಯಾಳ ಸಿಂಟ್ಯಾಕ್ಸ್ MATLAB ಗೆ ಹತ್ತಿರದಲ್ಲಿದೆ, ರೂಬಿ ಮತ್ತು ಲಿಸ್ಪ್‌ನಿಂದ ಕೆಲವು ಅಂಶಗಳನ್ನು ಎರವಲು ಪಡೆಯುತ್ತದೆ. ಸ್ಟ್ರಿಂಗ್ ಮ್ಯಾನಿಪ್ಯುಲೇಷನ್ ವಿಧಾನವು ಪರ್ಲ್ ಅನ್ನು ನೆನಪಿಸುತ್ತದೆ. ಯೋಜನೆಯ ಕೋಡ್ ಅನ್ನು MIT ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ವಿತರಿಸಲಾಗಿದೆ.

ಭಾಷೆಯ ಪ್ರಮುಖ ಲಕ್ಷಣಗಳು:

  • ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆ: ಸಿ ಕಾರ್ಯಕ್ರಮಗಳಿಗೆ ಸಮೀಪವಿರುವ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸಾಧಿಸುವುದು ಯೋಜನೆಯ ಪ್ರಮುಖ ಗುರಿಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ. ಜೂಲಿಯಾ ಕಂಪೈಲರ್ LLVM ಯೋಜನೆಯ ಕೆಲಸವನ್ನು ಆಧರಿಸಿದೆ ಮತ್ತು ಅನೇಕ ಗುರಿ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್‌ಗಳಿಗೆ ಸಮರ್ಥ ಸ್ಥಳೀಯ ಯಂತ್ರ ಸಂಕೇತವನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ;
  • ಆಬ್ಜೆಕ್ಟ್-ಓರಿಯೆಂಟೆಡ್ ಮತ್ತು ಕ್ರಿಯಾತ್ಮಕ ಪ್ರೋಗ್ರಾಮಿಂಗ್‌ನ ಅಂಶಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ವಿವಿಧ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮಾದರಿಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. ಪ್ರಮಾಣಿತ ಗ್ರಂಥಾಲಯವು ಇತರ ವಿಷಯಗಳ ಜೊತೆಗೆ, ಅಸಮಕಾಲಿಕ I/O, ಪ್ರಕ್ರಿಯೆ ನಿಯಂತ್ರಣ, ಲಾಗಿಂಗ್, ಪ್ರೊಫೈಲಿಂಗ್ ಮತ್ತು ಪ್ಯಾಕೇಜ್ ನಿರ್ವಹಣೆಗಾಗಿ ಕಾರ್ಯಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ;
  • ಡೈನಾಮಿಕ್ ಟೈಪಿಂಗ್: ಸ್ಕ್ರಿಪ್ಟಿಂಗ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳಿಗೆ ಹೋಲುವ ಅಸ್ಥಿರಗಳ ಪ್ರಕಾರಗಳ ಸ್ಪಷ್ಟ ವ್ಯಾಖ್ಯಾನವು ಭಾಷೆಗೆ ಅಗತ್ಯವಿರುವುದಿಲ್ಲ. ಇಂಟರಾಕ್ಟಿವ್ ಮೋಡ್ ಬೆಂಬಲಿತವಾಗಿದೆ;
  • ವಿಧಗಳನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ನಿರ್ದಿಷ್ಟಪಡಿಸುವ ಐಚ್ಛಿಕ ಸಾಮರ್ಥ್ಯ;
  • ಸಂಖ್ಯಾತ್ಮಕ ಕಂಪ್ಯೂಟಿಂಗ್, ವೈಜ್ಞಾನಿಕ ಕಂಪ್ಯೂಟಿಂಗ್, ಯಂತ್ರ ಕಲಿಕೆ ಮತ್ತು ಡೇಟಾ ದೃಶ್ಯೀಕರಣಕ್ಕೆ ಸಿಂಟ್ಯಾಕ್ಸ್ ಸೂಕ್ತವಾಗಿದೆ. ಲೆಕ್ಕಾಚಾರಗಳ ಸಮಾನಾಂತರೀಕರಣಕ್ಕಾಗಿ ಅನೇಕ ಸಂಖ್ಯಾ ಡೇಟಾ ಪ್ರಕಾರಗಳು ಮತ್ತು ಸಾಧನಗಳಿಗೆ ಬೆಂಬಲ.
  • ಹೆಚ್ಚುವರಿ ಲೇಯರ್‌ಗಳಿಲ್ಲದೆ C ಲೈಬ್ರರಿಗಳಿಂದ ನೇರವಾಗಿ ಕಾರ್ಯಗಳನ್ನು ಕರೆಯುವ ಸಾಮರ್ಥ್ಯ.

ಜೂಲಿಯಾ 1.9 ರಲ್ಲಿ ಪ್ರಮುಖ ಬದಲಾವಣೆಗಳು:

  • ಹೊಸ ಭಾಷೆಯ ವೈಶಿಷ್ಟ್ಯಗಳು
    • "setproperty!(::Module, ::Symbol, x)" ಅನ್ನು ಬಳಸಿಕೊಂಡು ಮತ್ತೊಂದು ಮಾಡ್ಯೂಲ್‌ನಲ್ಲಿ ಕಾರ್ಯಯೋಜನೆಗಳನ್ನು ಮಾಡಲು ಅನುಮತಿಸಿ.
    • ಅಂತಿಮ ಸ್ಥಾನದಲ್ಲಿಲ್ಲದ ಬಹು ಕಾರ್ಯಯೋಜನೆಗಳನ್ನು ಅನುಮತಿಸಲಾಗಿದೆ. ಉದಾಹರಣೆಗೆ, "a, b..., c = 1, 2, 3, 4" ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು "a = 1 ಎಂದು ಸಂಸ್ಕರಿಸಲಾಗುತ್ತದೆ; ಬಿ..., = 2, 3; c = 4". ಇದನ್ನು Base.split_rest ಮೂಲಕ ನಿರ್ವಹಿಸಲಾಗುತ್ತದೆ.
    • ಏಕ ಅಕ್ಷರ ಅಕ್ಷರಗಳು ಈಗ ಸ್ಟ್ರಿಂಗ್ ಲಿಟರಲ್‌ಗಳಂತೆಯೇ ಅದೇ ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತವೆ; ಆ. ಚಾರ್ ಪ್ರಕಾರದಿಂದ ಅನುಮತಿಸಿದಂತೆ ಸಿಂಟ್ಯಾಕ್ಸ್ ಅಮಾನ್ಯವಾದ UTF-8 ಅನುಕ್ರಮಗಳನ್ನು ಪ್ರತಿನಿಧಿಸಬಹುದು.
    • ಯುನಿಕೋಡ್ 15 ವಿವರಣೆಗೆ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ.
    • ಟುಪಲ್‌ಗಳ ನೆಸ್ಟೆಡ್ ಸಂಯೋಜನೆಗಳು ಮತ್ತು ಹೆಸರಿನ ಅಕ್ಷರ ಟುಪಲ್‌ಗಳನ್ನು ಈಗ ಟೈಪ್ ಪ್ಯಾರಾಮೀಟರ್‌ಗಳಾಗಿ ಬಳಸಬಹುದು.
    • ಹೊಸ ಅಂತರ್ನಿರ್ಮಿತ ಕಾರ್ಯಗಳು "getglobal(::Module, ::Symbol[, order])" ಮತ್ತು "setglobal!(::Module, ::Symbol, x[, order])" ಜಾಗತಿಕ ವೇರಿಯಬಲ್‌ಗಳಿಗೆ ಪ್ರತ್ಯೇಕವಾಗಿ ಓದಲು ಮತ್ತು ಬರೆಯಲು. ಜಾಗತಿಕ ವೇರಿಯೇಬಲ್‌ಗಳನ್ನು ಪ್ರವೇಶಿಸಲು getfield ವಿಧಾನಕ್ಕಿಂತ ಈಗ getglobal ವಿಧಾನವನ್ನು ಆದ್ಯತೆ ನೀಡಬೇಕು.
  • ಭಾಷೆಯಲ್ಲಿ ಬದಲಾವಣೆಗಳು
    • ಆವೃತ್ತಿ 1.7 ರಲ್ಲಿ ಪರಿಚಯಿಸಲಾದ "@invoke" ಮ್ಯಾಕ್ರೋ ಈಗ ರಫ್ತು ಮಾಡಲ್ಪಟ್ಟಿದೆ ಮತ್ತು ಬಳಕೆಗೆ ಲಭ್ಯವಿದೆ. ಹೆಚ್ಚುವರಿಯಾಗಿ, "x" ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗಾಗಿ ಟೈಪ್ ಟಿಪ್ಪಣಿಯನ್ನು ಬಿಟ್ಟುಬಿಟ್ಟರೆ ಅದು ಈಗ "ಯಾವುದೇ" ಬದಲಿಗೆ "Core.Typeof(x)" ವಿಧಾನವನ್ನು ಬಳಸುತ್ತದೆ. ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗಳಾಗಿ ರವಾನಿಸಲಾದ ಪ್ರಕಾರಗಳನ್ನು ಸರಿಯಾಗಿ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಲಾಗಿದೆಯೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಇದು ಅವಶ್ಯಕವಾಗಿದೆ.
    • ಆವೃತ್ತಿ 1.7 ರಲ್ಲಿ ಪರಿಚಯಿಸಲಾದ "invokelatest" ಕಾರ್ಯ ಮತ್ತು "@invokelatest" ಮ್ಯಾಕ್ರೋ ರಫ್ತು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ.
  • ಕಂಪೈಲರ್/ರನ್‌ಟೈಮ್ ಸುಧಾರಣೆಗಳು
    • ಮೊದಲ ಮರಣದಂಡನೆಗೆ ಸಮಯವನ್ನು ಗಮನಾರ್ಹವಾಗಿ ಕಡಿಮೆ ಮಾಡಲಾಗಿದೆ (TTFX - ಮೊದಲ ಮರಣದಂಡನೆಗೆ ಸಮಯ). ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಪೂರ್ವ ಕಂಪೈಲ್ ಮಾಡುವುದು ಈಗ ಸ್ಥಳೀಯ ಕೋಡ್ ಅನ್ನು "pkgimage" ನಲ್ಲಿ ಸಂಗ್ರಹಿಸುತ್ತದೆ, ಅಂದರೆ ಪ್ಯಾಕೇಜ್ ಲೋಡ್ ಆದ ನಂತರ ಪ್ರಿಕಂಪೈಲೇಶನ್ ಪ್ರಕ್ರಿಯೆಯಿಂದ ರಚಿಸಲಾದ ಕೋಡ್ ಅನ್ನು ಮರುಸಂಕಲಿಸುವ ಅಗತ್ಯವಿಲ್ಲ. "--pkgimages=no" ಆಯ್ಕೆಯನ್ನು ಬಳಸಿಕೊಂಡು pkgimages ಮೋಡ್‌ನ ಬಳಕೆಯನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಬಹುದು.
    • ವಿಧದ ನಿರ್ಣಯದ ತಿಳಿದಿರುವ ಕ್ವಾಡ್ರಾಟಿಕ್ ಸಂಕೀರ್ಣತೆಯ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲಾಗಿದೆ, ಮತ್ತು ನಿರ್ಣಯವು ಒಟ್ಟಾರೆಯಾಗಿ ಕಡಿಮೆ ಮೆಮೊರಿಯನ್ನು ಬಳಸುತ್ತದೆ. ಸ್ವಯಂಚಾಲಿತವಾಗಿ ರಚಿಸಲಾದ ದೀರ್ಘ ಕಾರ್ಯಗಳನ್ನು ಹೊಂದಿರುವ ಕೆಲವು ಎಡ್ಜ್ ಕೇಸ್‌ಗಳು (ಉದಾಹರಣೆಗೆ ModelingToolkit.jl ಭಾಗಶಃ ಭೇದಾತ್ಮಕ ಸಮೀಕರಣಗಳು ಮತ್ತು ದೊಡ್ಡ ಸಾಂದರ್ಭಿಕ ಮಾದರಿಗಳು) ಹೆಚ್ಚು ವೇಗವಾಗಿ ಕಂಪೈಲ್ ಆಗುತ್ತವೆ.
    • ಕಾಂಕ್ರೀಟ್ ಪ್ರಕಾರಗಳಿಲ್ಲದ ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗಳೊಂದಿಗಿನ ಕರೆಗಳು ಈಗ ಯೂನಿಯನ್-ಸ್ಪ್ಲಿಟಿಂಗ್ ಅನ್ನು ಇಂಜೆಕ್ಷನ್ ಅಥವಾ ಸ್ಥಿರ ರೆಸಲ್ಯೂಶನ್‌ಗಾಗಿ ಆಪ್ಟಿಮೈಸ್ ಮಾಡಬಹುದು, ರವಾನೆಗಾಗಿ ಹಲವಾರು ವಿಭಿನ್ನ-ಪ್ರಕಾರದ ಅಭ್ಯರ್ಥಿಗಳು ಇದ್ದರೂ ಸಹ. "@nospecialize-d" ಕರೆ ಸೈಟ್‌ಗಳನ್ನು ಸ್ಥಿರವಾಗಿ ಪರಿಹರಿಸುವ ಮೂಲಕ ಮತ್ತು ಮರುಸಂಕಲನವನ್ನು ತಪ್ಪಿಸುವ ಮೂಲಕ ವಸ್ತು ಪ್ರಕಾರಗಳನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಸ್ಥಿರವಾಗಿ ಪರಿಹರಿಸದ ಕೆಲವು ಸಂದರ್ಭಗಳಲ್ಲಿ ಇದು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸುಧಾರಿಸುತ್ತದೆ.
    • ಬೇಸ್ ಮಾಡ್ಯೂಲ್‌ನಲ್ಲಿನ @ಶುದ್ಧ ಮ್ಯಾಕ್ರೋದ ಎಲ್ಲಾ ಬಳಕೆಗಳನ್ನು Base.@assume_effects ಬದಲಾಯಿಸಲಾಗಿದೆ.
    • ಸಾಮಾನ್ಯವಾಗಿ f(args...) ಗಾಗಿ ಬಳಸುವುದಕ್ಕಿಂತ ಕಡಿಮೆ ನಿರ್ದಿಷ್ಟ ಪ್ರಕಾರಗಳೊಂದಿಗೆ ಆಹ್ವಾನಿಸಲು (f, invokesig, args...) ಕರೆಗಳು ಇನ್ನು ಮುಂದೆ ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಮರುಸಂಕಲಿಸಲು ಕಾರಣವಾಗುವುದಿಲ್ಲ.
  • ಕಮಾಂಡ್ ಲೈನ್ ಆಯ್ಕೆಗಳಿಗೆ ಬದಲಾವಣೆಗಳು
    • Linux ಮತ್ತು Windows ನಲ್ಲಿ, "--threads=auto" ಆಯ್ಕೆಯು CPU ಅಫಿನಿಟಿಯ ಆಧಾರದ ಮೇಲೆ ಲಭ್ಯವಿರುವ ಪ್ರೊಸೆಸರ್‌ಗಳ ಸಂಖ್ಯೆಯನ್ನು ನಿರ್ಧರಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತದೆ, ಇದು ಸಾಮಾನ್ಯವಾಗಿ HPC ಮತ್ತು ಕ್ಲೌಡ್ ಪರಿಸರದಲ್ಲಿ ಹೊಂದಿಸಲಾದ ಮುಖವಾಡವಾಗಿದೆ.
    • "--math-mode=fast" ಪ್ಯಾರಾಮೀಟರ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ, ಅದರ ಬದಲಿಗೆ "@fastmath" ಮ್ಯಾಕ್ರೋ ಅನ್ನು ಬಳಸಲು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ, ಇದು ಸ್ಪಷ್ಟವಾಗಿ ಅರ್ಥಶಾಸ್ತ್ರವನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುತ್ತದೆ.
    • "--ಥ್ರೆಡ್‌ಗಳು" ಆಯ್ಕೆಯು ಈಗ "ಆಟೋ | ಫಾರ್ಮ್ಯಾಟ್‌ನಲ್ಲಿದೆ N[,auto|M]", ಇಲ್ಲಿ M ಎನ್ನುವುದು ರಚಿಸಲು ಸಂವಾದಾತ್ಮಕ ಎಳೆಗಳ ಸಂಖ್ಯೆಯನ್ನು ಸೂಚಿಸುತ್ತದೆ (ಪ್ರಸ್ತುತ ಸ್ವಯಂ ಎಂದರೆ 1).
    • "—heap-size-hint=" ಆಯ್ಕೆಯನ್ನು ಸೇರಿಸಲಾಗಿದೆ ", ಇದು ಮಿತಿಯನ್ನು ಹೊಂದಿಸುತ್ತದೆ, ಅದರ ನಂತರ ಸಕ್ರಿಯ ಕಸ ಸಂಗ್ರಹಣೆ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. ಗಾತ್ರವನ್ನು ಬೈಟ್‌ಗಳು, ಕಿಲೋಬೈಟ್‌ಗಳು (1000 KB), ಮೆಗಾಬೈಟ್‌ಗಳು (300 MB), ಅಥವಾ ಗಿಗಾಬೈಟ್‌ಗಳಲ್ಲಿ (1,5 GB) ನಿರ್ದಿಷ್ಟಪಡಿಸಬಹುದು.
  • ಮಲ್ಟಿಥ್ರೆಡಿಂಗ್‌ನಲ್ಲಿ ಬದಲಾವಣೆಗಳು
    • "Threads.@spawn" ಈಗ ":ಡೀಫಾಲ್ಟ್" ಅಥವಾ ":ಇಂಟರಾಕ್ಟಿವ್" ಮೌಲ್ಯದೊಂದಿಗೆ ಐಚ್ಛಿಕ ಮೊದಲ ಆರ್ಗ್ಯುಮೆಂಟ್ ಅನ್ನು ಹೊಂದಿದೆ. ಸಂವಾದಾತ್ಮಕ ಕಾರ್ಯಕ್ಕೆ ಕಡಿಮೆ ಪ್ರತಿಕ್ರಿಯೆಯ ಲೇಟೆನ್ಸಿ ಅಗತ್ಯವಿರುತ್ತದೆ ಮತ್ತು ಚಿಕ್ಕದಾಗಿ ಅಥವಾ ಆಗಾಗ್ಗೆ ನಿರ್ವಹಿಸಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಜೂಲಿಯಾವನ್ನು ಪ್ರಾರಂಭಿಸುವಾಗ ಸಂವಾದಾತ್ಮಕ ಥ್ರೆಡ್‌ಗಳನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಿದರೆ ಸಂವಾದಾತ್ಮಕ ಕಾರ್ಯಗಳು ರನ್ ಆಗುತ್ತವೆ.
    • ಜೂಲಿಯಾ ರನ್‌ಟೈಮ್‌ನ ಹೊರಗೆ ಚಾಲನೆಯಲ್ಲಿರುವ ಥ್ರೆಡ್‌ಗಳು (ಉದಾಹರಣೆಗೆ ಸಿ ಅಥವಾ ಜಾವಾದಿಂದ) ಈಗ "jl_adopt_thread" ಅನ್ನು ಬಳಸಿಕೊಂಡು ಜೂಲಿಯಾ ಕೋಡ್ ಅನ್ನು ಕರೆಯಬಹುದು. "cfunction" ಅಥವಾ "@ccallable" ಪ್ರವೇಶ ಬಿಂದುವಿನ ಮೂಲಕ ಜೂಲಿಯಾ ಕೋಡ್ ಅನ್ನು ನಮೂದಿಸುವಾಗ ಇದು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸಂಭವಿಸುತ್ತದೆ. ಪರಿಣಾಮವಾಗಿ, ಈಗ ಎಕ್ಸಿಕ್ಯೂಶನ್ ಸಮಯದಲ್ಲಿ ಥ್ರೆಡ್‌ಗಳ ಸಂಖ್ಯೆ ಬದಲಾಗಬಹುದು.
  • ಹೊಸ ಗ್ರಂಥಾಲಯ ಕಾರ್ಯಗಳು
    • ಹೊಸ ಕಾರ್ಯ "Iterators.flatmap".
    • "pkgdir(m::Module)" ನಂತೆಯೇ ನೀಡಲಾದ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ಲೋಡ್ ಮಾಡಿದ ಪ್ಯಾಕೇಜ್‌ನ ಆವೃತ್ತಿಯನ್ನು ಪಡೆಯಲು "pkgversion(m::Module)" ಹೊಸ ಕಾರ್ಯ.
    • ಹೊಸ ಫಂಕ್ಷನ್ "stack(x)" ಇದು "reduce(hcat, x::Vector{<:Vector})" ಅನ್ನು ಯಾವುದೇ ಆಯಾಮಕ್ಕೆ ಸಾಮಾನ್ಯೀಕರಿಸುತ್ತದೆ ಮತ್ತು ಯಾವುದೇ ಪುನರಾವರ್ತಕಗಳ ಪುನರಾವರ್ತಕವನ್ನು ಅನುಮತಿಸುತ್ತದೆ. "ಸ್ಟಾಕ್(f, x)" ವಿಧಾನವು "mapreduce(f, hcat, x)" ಅನ್ನು ಸಾಮಾನ್ಯೀಕರಿಸುತ್ತದೆ ಮತ್ತು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿರುತ್ತದೆ.
    • ಹಂಚಿಕೆ ಮಾಡಲಾದ ಮೆಮೊರಿಯ "@ಅಲೊಕೇಶನ್ಸ್" ಅನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಹೊಸ ಮ್ಯಾಕ್ರೋ, "@ಹಂಚಿಕೆ" ಯಂತೆಯೇ, ಇದು ಹಂಚಿಕೆ ಮಾಡಲಾದ ಮೆಮೊರಿಯ ಒಟ್ಟು ಗಾತ್ರಕ್ಕಿಂತ ಹೆಚ್ಚಾಗಿ ಮೆಮೊರಿ ಹಂಚಿಕೆಗಳ ಸಂಖ್ಯೆಯನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ.
  • ಹೊಸ ಲೈಬ್ರರಿ ವೈಶಿಷ್ಟ್ಯಗಳು
    • "RoundFromZero" ಈಗ "BigFloat" ಅನ್ನು ಹೊರತುಪಡಿಸಿ ಇತರ ಪ್ರಕಾರಗಳಿಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ.
    • "Dict" ಅನ್ನು ಈಗ "sizehint!" ಅನ್ನು ಬಳಸಿಕೊಂಡು ಹಸ್ತಚಾಲಿತವಾಗಿ ಕಡಿಮೆ ಮಾಡಬಹುದು!
    • "@ಸಮಯ" ಈಗ ಪ್ರತ್ಯೇಕವಾಗಿ ಅಮಾನ್ಯ ವಿಧಾನಗಳನ್ನು ಮರುಸಂಕಲಿಸಲು ಕಳೆದ ಶೇಕಡಾವಾರು ಸಮಯವನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುತ್ತದೆ.
  • ಪ್ರಮಾಣಿತ ಗ್ರಂಥಾಲಯಕ್ಕೆ ಬದಲಾವಣೆಗಳು
    • ಡಿಕ್ಟ್ ಮತ್ತು ಕೀಗಳು (:: ಡಿಕ್ಟ್), ಮೌಲ್ಯಗಳು (:: ಡಿಕ್ಟ್) ಮತ್ತು ಸೆಟ್‌ನಂತಹ ಇತರ ಮೂಲದ ವಸ್ತುಗಳಿಗೆ ಪುನರಾವರ್ತನೆ ವಿಧಾನಗಳಲ್ಲಿ ಏಕಕಾಲಿಕ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲಾಗಿದೆ. ಈ ಪುನರಾವರ್ತನೆಯ ವಿಧಾನಗಳನ್ನು ಈಗ ಡಿಕ್ಟ್ ಅಥವಾ ಸೆಟ್‌ನಲ್ಲಿ ಅನಿಯಮಿತ ಸಂಖ್ಯೆಯ ಥ್ರೆಡ್‌ಗಳಿಗೆ ಸಮಾನಾಂತರವಾಗಿ ಕರೆಯಬಹುದು, ಎಲ್ಲಿಯವರೆಗೆ ನಿಘಂಟು ಅಥವಾ ಸೆಟ್ ಅನ್ನು ಮಾರ್ಪಡಿಸುವ ಯಾವುದೇ ಕ್ರಿಯೆಗಳಿಲ್ಲ.
    • ಪ್ರೆಡಿಕೇಟ್ ಫಂಕ್ಷನ್ "!f" ಅನ್ನು ನಿರಾಕರಿಸುವುದು ಈಗ ಅನಾಮಧೇಯ ಕಾರ್ಯದ ಬದಲಿಗೆ "(!) ∘ f" ಎಂಬ ಸಂಯೋಜಿತ ಕಾರ್ಯವನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ.
    • ಡೈಮೆನ್ಶನ್ ಸ್ಲೈಸ್ ಫಂಕ್ಷನ್‌ಗಳು ಈಗ ಬಹು ಆಯಾಮಗಳಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ: "eachslice", "eachrow" ಮತ್ತು "eachcol" ಒಂದು "ಸ್ಲೈಸ್" ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ, ಅದು ರವಾನೆಯು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿ ವಿಧಾನಗಳನ್ನು ಒದಗಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.
    • ಸಾರ್ವಜನಿಕ API ಗೆ "@kwdef" ಮ್ಯಾಕ್ರೋವನ್ನು ಸೇರಿಸಲಾಗಿದೆ.
    • "fld1" ನಲ್ಲಿನ ಕಾರ್ಯಾಚರಣೆಗಳ ಕ್ರಮದಲ್ಲಿ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲಾಗಿದೆ.
    • ವಿಂಗಡಣೆಯು ಈಗ ಯಾವಾಗಲೂ ಸಮಯ-ಸ್ಥಿರವಾಗಿರುತ್ತದೆ (ಕ್ವಿಕ್‌ಸೋರ್ಟ್ ಅನ್ನು ಮರುವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ).
    • "Base.splat" ಅನ್ನು ಈಗ ರಫ್ತು ಮಾಡಲಾಗಿದೆ. ರಿಟರ್ನ್ ಮೌಲ್ಯವು ಅನಾಮಧೇಯ ಕಾರ್ಯಕ್ಕಿಂತ "Base.Splat" ಪ್ರಕಾರವಾಗಿದೆ, ಇದು ಉತ್ತಮವಾಗಿ ಔಟ್‌ಪುಟ್ ಮಾಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.
  • ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್
    • "ಪ್ಯಾಕೇಜ್ ವಿಸ್ತರಣೆಗಳು": ಜೂಲಿಯಾ ಸೆಶನ್‌ನಲ್ಲಿ ಲೋಡ್ ಮಾಡಲಾದ ಇತರ ಪ್ಯಾಕೇಜ್‌ಗಳಿಂದ ಕೋಡ್ ತುಣುಕನ್ನು ಲೋಡ್ ಮಾಡಲು ಬೆಂಬಲ. ಅಪ್ಲಿಕೇಶನ್ "Requires.jl" ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಹೋಲುತ್ತದೆ, ಆದರೆ ಪೂರ್ವ ಸಂಕಲನ ಮತ್ತು ಸೆಟ್ಟಿಂಗ್‌ಗಳ ಹೊಂದಾಣಿಕೆಯನ್ನು ಬೆಂಬಲಿಸಲಾಗುತ್ತದೆ.
  • ಲೀನಿಯರ್ ಆಲ್ಜೀಬ್ರಾ ಲೈಬ್ರರಿ
    • ಅಂಶ-ವಾರು ವಿಭಜನೆಯೊಂದಿಗೆ ಗೊಂದಲದ ಅಪಾಯದಿಂದಾಗಿ, "a * pinv(b)" ಗೆ ಸಮನಾದ ಸ್ಕೇಲಾರ್ "a" ಮತ್ತು ವೆಕ್ಟರ್ "b" ನೊಂದಿಗೆ "a/b" ಮತ್ತು "b\a" ವಿಧಾನಗಳನ್ನು ತೆಗೆದುಹಾಕಲಾಗಿದೆ.
    • BLAS ಮತ್ತು LAPACK ಅನ್ನು ಕರೆಯುವುದು ಈಗ "libblastrampoline (LBT)" ಅನ್ನು ಬಳಸುತ್ತದೆ. OpenBLAS ಅನ್ನು ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ಒದಗಿಸಲಾಗಿದೆ, ಆದರೆ ಇತರ BLAS/LAPACK ಲೈಬ್ರರಿಗಳೊಂದಿಗೆ ಸಿಸ್ಟಮ್ ಇಮೇಜ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಬೆಂಬಲವಿಲ್ಲ. ಬದಲಿಗೆ, BLAS/LAPACK ಅನ್ನು ಮತ್ತೊಂದು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಲೈಬ್ರರಿಗಳೊಂದಿಗೆ ಬದಲಾಯಿಸಲು LBT ಕಾರ್ಯವಿಧಾನವನ್ನು ಬಳಸಲು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ.
    • "lu" ಹೊಸ ಮ್ಯಾಟ್ರಿಕ್ಸ್ ತಿರುಗುವಿಕೆಯ ತಂತ್ರವನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ, "RowNonZero()", ಇದು ಹೊಸ ಅಂಕಗಣಿತದ ಪ್ರಕಾರಗಳೊಂದಿಗೆ ಬಳಸಲು ಮತ್ತು ತರಬೇತಿ ಉದ್ದೇಶಗಳಿಗಾಗಿ ಮೊದಲ ಶೂನ್ಯವಲ್ಲದ ತಿರುಗುವಿಕೆಯ ಅಂಶವನ್ನು ಆಯ್ಕೆ ಮಾಡುತ್ತದೆ.
    • "normalize(x, p=2)" ಈಗ ಸ್ಕೇಲರ್‌ಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ಯಾವುದೇ ಸಾಮಾನ್ಯೀಕರಿಸಿದ ವೆಕ್ಟರ್ ಸ್ಪೇಸ್ "x" ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ.
    • BLAS ಥ್ರೆಡ್‌ಗಳ ಡೀಫಾಲ್ಟ್ ಸಂಖ್ಯೆಯು ಈಗ ARM ಆರ್ಕಿಟೆಕ್ಚರ್‌ಗಳಲ್ಲಿನ CPU ಥ್ರೆಡ್‌ಗಳ ಸಂಖ್ಯೆಗೆ ಮತ್ತು ಇತರ ಆರ್ಕಿಟೆಕ್ಚರ್‌ಗಳಲ್ಲಿನ CPU ಥ್ರೆಡ್‌ಗಳ ಅರ್ಧದಷ್ಟು ಸಂಖ್ಯೆಗೆ ಸಮಾನವಾಗಿದೆ.
  • Printf: ಉತ್ತಮ ಓದುವಿಕೆಗಾಗಿ ತಪ್ಪಾಗಿ ಫಾರ್ಮ್ಯಾಟ್ ಮಾಡಲಾದ ಸ್ಟ್ರಿಂಗ್‌ಗಳಿಗಾಗಿ ದೋಷ ಸಂದೇಶಗಳನ್ನು ಪುನಃ ರಚಿಸಲಾಗಿದೆ.
  • ಪ್ರೊಫೈಲ್: ಹೊಸ ಕಾರ್ಯ "Profile.take_heap_snapshot(file)", ಇದು Chrome ನಲ್ಲಿ ಬೆಂಬಲಿತವಾದ JSON-ಆಧಾರಿತ ".heapsnapshot" ಸ್ವರೂಪದಲ್ಲಿ ಫೈಲ್ ಅನ್ನು ಬರೆಯುತ್ತದೆ.
  • ಯಾದೃಚ್ಛಿಕ: randn ಮತ್ತು randexp ಈಗ ರಾಂಡ್ ಅನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುವ ಯಾವುದೇ ಅಮೂರ್ತ ಫ್ಲೋಟ್ ಪ್ರಕಾರಕ್ಕೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ.
  • REPL
    • "Alt-e" ಕೀ ಸಂಯೋಜನೆಯನ್ನು ಒತ್ತುವುದರಿಂದ ಈಗ ಎಡಿಟರ್‌ನಲ್ಲಿ ಪ್ರಸ್ತುತ ಇನ್‌ಪುಟ್ ತೆರೆಯುತ್ತದೆ. ನೀವು ಸಂಪಾದಕದಿಂದ ನಿರ್ಗಮಿಸಿದಾಗ ವಿಷಯವನ್ನು (ಮಾರ್ಪಡಿಸಿದರೆ) ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ.
    • REPL ನಲ್ಲಿ ಸಕ್ರಿಯವಾಗಿರುವ ಪ್ರಸ್ತುತ ಮಾಡ್ಯೂಲ್ ಸಂದರ್ಭವನ್ನು "REPL.activate(::Module)" ಕಾರ್ಯವನ್ನು ಬಳಸಿಕೊಂಡು ಅಥವಾ REPL ನಲ್ಲಿ ಮಾಡ್ಯೂಲ್ ಅನ್ನು ನಮೂದಿಸುವ ಮೂಲಕ ಮತ್ತು "Alt-m" ಕೀ ಸಂಯೋಜನೆಯನ್ನು ಒತ್ತುವ ಮೂಲಕ ಬದಲಾಯಿಸಬಹುದು (ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ).
    • ಪ್ರತಿ ಇನ್‌ಪುಟ್ ಮತ್ತು ಔಟ್‌ಪುಟ್‌ಗೆ ಸಂಖ್ಯೆಗಳನ್ನು ಮುದ್ರಿಸುವ ಮತ್ತು ಸ್ಕೋರ್ ಮಾಡಿದ ಫಲಿತಾಂಶಗಳನ್ನು ಔಟ್‌ನಲ್ಲಿ ಸಂಗ್ರಹಿಸುವ "ಸಂಖ್ಯೆಯ ಪ್ರಾಂಪ್ಟ್" ಮೋಡ್ ಅನ್ನು "REPL.numbered_prompt!()" ಬಳಸಿಕೊಂಡು ಸಕ್ರಿಯಗೊಳಿಸಬಹುದು.
    • ಟ್ಯಾಬ್ ಪೂರ್ಣಗೊಳಿಸುವಿಕೆಯು ಲಭ್ಯವಿರುವ ಕೀವರ್ಡ್ ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗಳನ್ನು ಪ್ರದರ್ಶಿಸುತ್ತದೆ.
  • SuiteSparse: "SuiteSparse" ಪರಿಹಾರಕಕ್ಕಾಗಿ ಕೋಡ್ ಅನ್ನು "SparseArrays.jl" ಗೆ ಸರಿಸಲಾಗಿದೆ. ಪರಿಹಾರಕಗಳನ್ನು ಈಗ "SuiteSparse.jl" ಮೂಲಕ ಮರು-ರಫ್ತು ಮಾಡಲಾಗಿದೆ.
  • SparseArays
    • "SuiteSparse" ಪರಿಹಾರಕಗಳು ಈಗ "SparseArrays" ಉಪ ಮಾಡ್ಯೂಲ್‌ಗಳಾಗಿ ಲಭ್ಯವಿದೆ.
    • ಜಾಗತಿಕ ಅಸ್ಥಿರಗಳನ್ನು ತೆಗೆದುಹಾಕುವ ಮೂಲಕ ಮತ್ತು ಲಾಕ್‌ಗಳನ್ನು ಬಳಸುವ ಮೂಲಕ UMFPACK ಮತ್ತು CHOLMOD ಥ್ರೆಡ್ ಪ್ರೊಟೆಕ್ಷನ್ ಮೋಡ್‌ಗಳನ್ನು ಸುಧಾರಿಸಲಾಗಿದೆ. ಬಹು-ಥ್ರೆಡ್ "ldiv!" UMFPACK ಆಬ್ಜೆಕ್ಟ್‌ಗಳನ್ನು ಈಗ ಸುರಕ್ಷಿತವಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು.
    • "SparseArrays.allowscalar(::Bool)" ಪ್ರಾಯೋಗಿಕ ಕಾರ್ಯವು ವಿರಳ ಅರೇಗಳ ಸ್ಕೇಲಾರ್ ಇಂಡೆಕ್ಸಿಂಗ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲು ಅಥವಾ ಸಕ್ರಿಯಗೊಳಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಈ ಕಾರ್ಯವು "SparseMatrixCSC" ವಸ್ತುಗಳ ಯಾದೃಚ್ಛಿಕ ಸ್ಕೇಲಾರ್ ಇಂಡೆಕ್ಸಿಂಗ್ ಅನ್ನು ಪತ್ತೆಹಚ್ಚಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ, ಇದು ಕಾರ್ಯಕ್ಷಮತೆಯ ಸಮಸ್ಯೆಗಳ ಸಾಮಾನ್ಯ ಮೂಲವಾಗಿದೆ.
  • ಪರೀಕ್ಷಾ ಸೂಟ್‌ಗಳಿಗಾಗಿ ಹೊಸ ಫೇಲ್‌ಸೇಫ್ ಮೋಡ್ ವೈಫಲ್ಯ ಅಥವಾ ದೋಷದ ಸಂದರ್ಭದಲ್ಲಿ ಪರೀಕ್ಷಾ ರನ್ ಅನ್ನು ಮೊದಲೇ ಕೊನೆಗೊಳಿಸುತ್ತದೆ. "@testset kwarg failfast=true" ಅಥವಾ "ರಫ್ತು JULIA_TEST_FAILFAST=true" ಮೂಲಕ ಹೊಂದಿಸಿ. ದೋಷ ಸಂದೇಶಗಳನ್ನು ಮೊದಲೇ ಸ್ವೀಕರಿಸಲು CI ರನ್‌ಗಳಲ್ಲಿ ಇದು ಕೆಲವೊಮ್ಮೆ ಅಗತ್ಯವಾಗಿರುತ್ತದೆ.
  • ದಿನಾಂಕಗಳು: ಖಾಲಿ ಸ್ಟ್ರಿಂಗ್‌ಗಳನ್ನು ಮಾನ್ಯವಾದ "ಡೇಟ್‌ಟೈಮ್", "ಡೇಟ್ಸ್" ಅಥವಾ "ಟೈಮ್ಸ್" ಮೌಲ್ಯಗಳಾಗಿ ಇನ್ನು ಮುಂದೆ ತಪ್ಪಾಗಿ ಪಾರ್ಸ್ ಮಾಡಲಾಗುವುದಿಲ್ಲ ಮತ್ತು ಬದಲಿಗೆ ಕನ್‌ಸ್ಟ್ರಕ್ಟರ್‌ಗಳು ಮತ್ತು ಪಾರ್ಸಿಂಗ್‌ನಲ್ಲಿ "ಆರ್ಗ್ಯುಮೆಂಟ್ ಎರರ್" ಅನ್ನು ಎಸೆಯಿರಿ, ಆದರೆ "ಟ್ರಿಪಾರ್ಸ್" ಏನನ್ನೂ ಹಿಂತಿರುಗಿಸುವುದಿಲ್ಲ.
  • ಪ್ಯಾಕೇಜ್ ವಿತರಿಸಲಾಗಿದೆ
    • ಪ್ಯಾಕೇಜ್ ಕಾನ್ಫಿಗರೇಶನ್ (ಸಕ್ರಿಯ ಯೋಜನೆ, "LOAD_PATH", "DEPOT_PATH") ಅನ್ನು ಈಗ ಸ್ಥಳೀಯ ವರ್ಕರ್ ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ಸೇರಿಸುವಾಗ (ಉದಾ. "addprocs(N:: Int)" ಬಳಸಿ ಅಥವಾ "--procs=N" ಆಜ್ಞಾ ಸಾಲಿನ ಫ್ಲ್ಯಾಗ್ ಅನ್ನು ಬಳಸುವಾಗ ಪ್ರಚಾರ ಮಾಡಲಾಗುತ್ತದೆ.
    • ಸ್ಥಳೀಯ ವರ್ಕರ್ ಪ್ರಕ್ರಿಯೆಗಳಿಗೆ "addprocs" ಈಗ ಪರಿಸರ ವೇರಿಯಬಲ್‌ಗಳನ್ನು ವರ್ಕರ್ ಪ್ರಕ್ರಿಯೆಗಳಿಗೆ ರವಾನಿಸಲು "env" ಹೆಸರಿನ ಆರ್ಗ್ಯುಮೆಂಟ್ ಅನ್ನು ಸ್ವೀಕರಿಸುತ್ತದೆ.
  • ಯುನಿಕೋಡ್: "ಗ್ರಾಫಿಮ್ಸ್(ಗಳು, ಎಂ:ಎನ್)" ಸಬ್‌ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು "s" ನಲ್ಲಿ mth ನಿಂದ nth ಗ್ರ್ಯಾಫೀಮ್‌ಗಳಿಗೆ ಹಿಂತಿರುಗಿಸುತ್ತದೆ.
  • ಡಿಲಿಮಿಟೆಡ್‌ಫೈಲ್ಸ್ ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಸಿಸ್ಟಮ್ ಲೈಬ್ರರಿಗಳಿಂದ ತೆಗೆದುಹಾಕಲಾಗಿದೆ ಮತ್ತು ಈಗ ಅದನ್ನು ಪ್ರತ್ಯೇಕ ಪ್ಯಾಕೇಜ್‌ನಂತೆ ವಿತರಿಸಲಾಗಿದೆ, ಅದನ್ನು ಬಳಸಲು ಸ್ಪಷ್ಟವಾಗಿ ಸ್ಥಾಪಿಸಬೇಕು.
  • ಬಾಹ್ಯ ಅವಲಂಬನೆಗಳು
    • Linux ನಲ್ಲಿ, libstdc++ ಸಿಸ್ಟಮ್ ಲೈಬ್ರರಿಯ ಆವೃತ್ತಿಯು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಪತ್ತೆಯಾಗುತ್ತದೆ ಮತ್ತು ಅದು ಹೊಸದಾಗಿದ್ದರೆ, ಅದನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತದೆ. "JULIA_PROBE_LIBSTDCXX=0" ಪರಿಸರ ವೇರಿಯೇಬಲ್ ಅನ್ನು ಹೊಂದಿಸುವ ಮೂಲಕ ಹಳೆಯ libstdc++ ಅಂತರ್ನಿರ್ಮಿತ ಲೋಡಿಂಗ್ ನಡವಳಿಕೆ, ಸಿಸ್ಟಮ್ ಆವೃತ್ತಿಯನ್ನು ಲೆಕ್ಕಿಸದೆ ಮರುಸ್ಥಾಪಿಸಬಹುದು.
    • ಜೂಲಿಯಾ ಬೈನರಿಯಿಂದ "RPATH" ಅನ್ನು ತೆಗೆದುಹಾಕಲಾಗಿದೆ, ಇದು "RUNPATH" ವೇರಿಯೇಬಲ್ ಅನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲು ವಿಫಲವಾದ Linux ನಲ್ಲಿ ಲೈಬ್ರರಿಗಳನ್ನು ಮುರಿಯಬಹುದು.
    • ಪರಿಕರ ಸುಧಾರಣೆಗಳು: "ಮೆಥೋಡ್ ಎರರ್" ಮತ್ತು ವಿಧಾನಗಳ ಔಟ್‌ಪುಟ್ (ಉದಾಹರಣೆಗೆ "ಮೆಥಡ್ಸ್(ಮೈ_ಫಂಕ್)" ನಿಂದ) ಈಗ ಫಾರ್ಮ್ಯಾಟ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಸ್ಟಾಕ್ ಟ್ರೇಸ್‌ನಲ್ಲಿ ವಿಧಾನಗಳ ಔಟ್‌ಪುಟ್ ತತ್ವಕ್ಕೆ ಅನುಗುಣವಾಗಿ ಬಣ್ಣಿಸಲಾಗಿದೆ.

    ಮೂಲ: opennet.ru

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