ืฉื—ืจื•ืจ ืฉืคืช ื”ืชื›ื ื•ืช Julia 1.8

ื”ืฉื—ืจื•ืจ ืฉืœ ืฉืคืช ื”ืชื›ื ื•ืช Julia 1.8 ื–ืžื™ื ื”, ื”ืžืฉืœื‘ืช ืื™ื›ื•ื™ื•ืช ื›ืžื• ื‘ื™ืฆื•ืขื™ื ื’ื‘ื•ื”ื™ื, ืชืžื™ื›ื” ื‘ื”ืงืœื“ื” ื“ื™ื ืžื™ืช ื•ื›ืœื™ื ืžื•ื‘ื ื™ื ืœืชื›ื ื•ืช ืžืงื‘ื™ืœ. ื”ืชื—ื‘ื™ืจ ืฉืœ ื’'ื•ืœื™ื” ืงืจื•ื‘ ืœ-MATLAB, ืฉื•ืืœ ื›ืžื” ืืœืžื ื˜ื™ื ืžืจื•ื‘ื™ ื•ืœื™ืกืค. ืฉื™ื˜ืช ืžื ื™ืคื•ืœืฆื™ื™ืช ื”ืžื™ืชืจื™ื ืžื–ื›ื™ืจื” ืืช ืคืจืœ. ืงื•ื“ ื”ืคืจื•ื™ืงื˜ ืžื•ืคืฅ ืชื—ืช ืจื™ืฉื™ื•ืŸ MIT.

ืชื›ื•ื ื•ืช ืขื™ืงืจื™ื•ืช ืฉืœ ื”ืฉืคื”:

  • ื‘ื™ืฆื•ืขื™ื ื’ื‘ื•ื”ื™ื: ืื—ืช ืžืžื˜ืจื•ืช ื”ืžืคืชื— ืฉืœ ื”ืคืจื•ื™ืงื˜ ื”ื™ื ืœื”ืฉื™ื’ ื‘ื™ืฆื•ืขื™ื ืงืจื•ื‘ื™ื ืœืชื•ื›ื ื™ื•ืช C. ื”ืžื”ื“ืจ ืฉืœ Julia ืžื‘ื•ืกืก ืขืœ ืคืจื•ื™ืงื˜ LLVM ื•ืžื™ื™ืฆืจ ืงื•ื“ ืžื›ื•ื ื” ืžืงื•ืจื™ ื™ืขื™ืœ ืขื‘ื•ืจ ืคืœื˜ืคื•ืจืžื•ืช ื™ืขื“ ืจื‘ื•ืช;
  • ืชืžื™ื›ื” ื‘ืคืจื“ื™ื’ืžื•ืช ืชื›ื ื•ืช ืฉื•ื ื•ืช, ื›ื•ืœืœ ืืœืžื ื˜ื™ื ืฉืœ ืชื›ื ื•ืช ืžื•ื ื—ื” ืขืฆืžื™ื ื•ืคื•ื ืงืฆื™ื•ื ืœื™. ื”ืกืคืจื™ื™ื” ื”ืกื˜ื ื“ืจื˜ื™ืช ืžืกืคืงืช ืคื•ื ืงืฆื™ื•ืช ืœ-I/O ืืกื™ื ื›ืจื•ื ื™, ื ื™ื”ื•ืœ ืชื”ืœื™ื›ื™ื, ืจื™ืฉื•ื, ืคืจื•ืคื™ืœื™ื ื•ื ื™ื”ื•ืœ ื—ื‘ื™ืœื•ืช, ื‘ื™ืŸ ื”ื™ืชืจ;
  • ื”ืงืœื“ื” ื“ื™ื ืžื™ืช: ื”ืฉืคื” ืื™ื ื” ื“ื•ืจืฉืช ื”ื’ื“ืจื” ืžืคื•ืจืฉืช ืฉืœ ื˜ื™ืคื•ืกื™ื ืœืžืฉืชื ื™ื, ื‘ืื ืœื•ื’ื™ื” ืœืฉืคื•ืช ืชื›ื ื•ืช ืกืงืจื™ืคื˜ื™ื. ืชื•ืžืš ื‘ืžืฆื‘ ืื™ื ื˜ืจืืงื˜ื™ื‘ื™;
  • ืืคืฉืจื•ืช ืื•ืคืฆื™ื•ื ืœื™ืช ืœืฆื™ื™ืŸ ืกื•ื’ื™ื ื‘ืžืคื•ืจืฉ;
  • ืชื—ื‘ื™ืจ ืžืฆื•ื™ืŸ ืœื—ื™ืฉื•ื‘ื™ื ืžืกืคืจื™ื™ื, ื—ื™ืฉื•ื‘ื™ื ืžื“ืขื™ื™ื, ืžืขืจื›ื•ืช ืœืžื™ื“ืช ืžื›ื•ื ื” ื•ื”ื“ืžื™ื™ืช ื ืชื•ื ื™ื. ืชืžื™ื›ื” ื‘ืกื•ื’ื™ ื ืชื•ื ื™ื ืžืกืคืจื™ื™ื ืจื‘ื™ื ื•ื‘ื›ืœื™ื ืœื—ื™ืฉื•ื‘ื™ื ืžืงื‘ื™ืœื™ื.
  • ื™ื›ื•ืœืช ืœื”ืชืงืฉืจ ื™ืฉื™ืจื•ืช ืœืคื•ื ืงืฆื™ื•ืช ืžืกืคืจื™ื•ืช C ืœืœื ืฉื›ื‘ื•ืช ื ื•ืกืคื•ืช.

ืฉื™ื ื•ื™ื™ื ืขื™ืงืจื™ื™ื ื‘ื’'ื•ืœื™ื” 1.8:

  • ืชื›ื•ื ื•ืช ืฉืคื” ื—ื“ืฉื•ืช
    • ืฉื“ื•ืช ืฉืœ ืžื‘ื ื” ื ื™ืชืŸ ืœืฉื™ื ื•ื™ ื ื™ืชื ื™ื ื›ืขืช ืœื”ืขืจื” ื›ืงื‘ื•ืขื™ื ื›ื“ื™ ืœืžื ื•ืข ืืช ืฉื™ื ื•ื™ื ื•ืœืืคืฉืจ ืื•ืคื˜ื™ืžื™ื–ืฆื™ื”.
    • ื ื™ืชืŸ ืœื”ื•ืกื™ืฃ ื”ืขืจื•ืช ืกื•ื’ ืœืžืฉืชื ื™ื ื’ืœื•ื‘ืœื™ื™ื.
    • ื ื™ืชืŸ ืœื™ืฆื•ืจ ืžืขืจื›ื™ื n-ืžืžื“ื™ื™ื ืจื™ืงื™ื ื‘ืืžืฆืขื•ืช ื ืงื•ื“ื•ืช ืคืกื™ืง ืžืจื•ื‘ื•ืช ื‘ืชื•ืš ืกื•ื’ืจื™ื™ื ืžืจื•ื‘ืขื™ื, ืœื“ื•ื’ืžื” "[;;;]" ื™ื•ืฆืจ ืžืขืจืš 0x0x0.
    • ื—ืกื™ืžื•ืช ื ื™ืกื™ื•ืŸ ื™ื›ื•ืœื™ื ื›ืขืช ืœื›ืœื•ืœ ื‘ืœื•ืง ืื—ืจ, ืืฉืจ ืžื‘ื•ืฆืข ืžื™ื“ ืœืื—ืจ ื”ื’ื•ืฃ ื”ืจืืฉื™ ืื ืœื ื ื–ืจืงื• ืฉื’ื™ืื•ืช.
    • ื ื™ืชืŸ ืœืžืงื ืืช @inline ื•-@noinline ื‘ืชื•ืš ื’ื•ืฃ ืคื•ื ืงืฆื™ื”, ืžื” ืฉืžืืคืฉืจ ืœืš ืœื”ื•ืกื™ืฃ ื”ืขืจื•ืช ืœืคื•ื ืงืฆื™ื” ืื ื•ื ื™ืžื™ืช.
    • ื›ืขืช ื ื™ืชืŸ ืœื”ื—ื™ืœ ืืช @inline ื•-@noinline ืขืœ ืคื•ื ืงืฆื™ื” ื‘ืืชืจ ืฉื™ื—ื” ืื• ื—ืกื™ืžื” ื›ื“ื™ ืœืืœืฅ ืืช ืงืจื™ืื•ืช ื”ืคื•ื ืงืฆื™ื” ื”ืžืชืื™ืžื•ืช ืœื”ื™ื›ืœืœ (ืื• ืœื ืœื›ืœื•ืœ).
    • โˆ€, โˆƒ ื•โˆ„ ืžื•ืชืจื™ื ื›ืชื•ื•ื™ ืžื–ื”ื”.
    • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžืคืจื˜ Unicode 14.0.0.
    • ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ืฉื™ื˜ืช Module(:name, false, false) ื›ื“ื™ ืœื™ืฆื•ืจ ืžื•ื“ื•ืœ ืฉืื™ื ื• ืžื›ื™ืœ ืฉืžื•ืช, ืื™ื ื• ืžื™ื™ื‘ื Base ืื• Core, ื•ืื™ื ื• ืžื›ื™ืœ ื”ืคื ื™ื” ืœืขืฆืžื•.
  • ืฉืคื” ืžืฉืชื ื”
    • ืœืื•ื‘ื™ื™ืงื˜ื™ ืžืฉื™ืžื” ืฉื–ื” ืขืชื” ื ื•ืฆืจื• (@spawn, @async ื•ื›ื•') ื™ืฉ ื›ืขืช world_age ืขื‘ื•ืจ ืฉื™ื˜ื•ืช ืžื”ืžืฉื™ืžื” ื”ืื‘ ื›ืืฉืจ ื ื•ืฆืจื•, ืžื” ืฉืžืืคืฉืจ ื‘ื™ืฆื•ืข ืื•ืคื˜ื™ืžืœื™. ืืคืฉืจื•ืช ื”ื”ืคืขืœื” ื”ืงื•ื“ืžืช ื–ืžื™ื ื” ื‘ืฉื™ื˜ืช Base.invokelatest.
    • ื”ื ื—ื™ื•ืช ืขื™ืฆื•ื‘ ื“ื•-ื›ื™ื•ื•ื ื™ื•ืช ืœื ืžืื•ื–ื ื•ืช ืฉืœ Unicode ืืกื•ืจื•ืช ื›ืขืช ื‘ืžื—ืจื•ื–ื•ืช ื•ื‘ื”ืขืจื•ืช ื›ื“ื™ ืœื”ื™ืžื ืข ืžื”ื–ืจืงื•ืช.
    • Base.ifelse ืžื•ื’ื“ืจ ื›ืขืช ื›ืคื•ื ืงืฆื™ื” ื’ื ืจื™ืช ื•ืœื ื›ืคื•ื ืงืฆื™ื” ืžื•ื‘ื ื™ืช, ื”ืžืืคืฉืจืช ืœื—ื‘ื™ืœื•ืช ืœื”ืจื—ื™ื‘ ืืช ื”ื”ื’ื“ืจื” ืฉืœื”.
    • ื›ืœ ื”ืงืฆืื” ืœืžืฉืชื ื” ื’ืœื•ื‘ืœื™ ืขื•ื‘ืจืช ื›ืขืช ืชื—ื™ืœื” ืงืจื™ืื” ืœื”ืžื™ืจ (Any, x) ืื• ืœื”ืžื™ืจ (T, x) ืื ื”ืžืฉืชื ื” ื”ื’ืœื•ื‘ืœื™ ื”ื•ื›ืจื– ื›ืกื•ื’ T. ืœืคื ื™ ื”ืฉื™ืžื•ืฉ ื‘ืžืฉืชื ื™ื ื’ืœื•ื‘ืœื™ื™ื, ื•ื“ื ืฉื”-Invariant convert(Any) , x) === x ืชืžื™ื“ ื ื›ื•ืŸ, ืื—ืจืช ื–ื” ืขืœื•ืœ ืœื”ื•ื‘ื™ืœ ืœื”ืชื ื”ื’ื•ืช ื‘ืœืชื™ ืฆืคื•ื™ื”.
    • ืคื•ื ืงืฆื™ื•ืช ืžื•ื‘ื ื•ืช ื“ื•ืžื•ืช ื›ืขืช ืœืคื•ื ืงืฆื™ื•ืช ื›ืœืœื™ื•ืช ื•ื ื™ืชืŸ ืœืžื ื•ืช ืื•ืชืŸ ื‘ืื•ืคืŸ ืชื›ื ื•ืชื™ ื‘ืืžืฆืขื•ืช ืฉื™ื˜ื•ืช.
  • ืฉื™ืคื•ืจื™ ืžื”ื“ืจ/ื–ืžืŸ ืจื™ืฆื”
    • ื–ืžืŸ ื”ืืชื—ื•ืœ ื™ืจื“ ื‘ื›-25%.
    • ื”ืžื”ื“ืจ ืžื‘ื•ืกืก LLVM ื”ื•ืคืจื“ ืžืกืคืจื™ื™ืช ื–ืžืŸ ื”ืจื™ืฆื” ืœืกืคืจื™ื™ื” ื—ื“ืฉื”, libjulia-codegen. ื”ื•ื ื ื˜ืขืŸ ื›ื‘ืจื™ืจืช ืžื—ื“ืœ, ื›ืš ืฉืœื ืืžื•ืจื™ื ืœื”ื™ื•ืช ืฉื™ื ื•ื™ื™ื ื‘ืžื”ืœืš ืฉื™ืžื•ืฉ ืจื’ื™ืœ. ื‘ืคืจื™ืกื•ืช ืฉืื™ื ืŸ ื–ืงื•ืงื•ืช ืœืžื”ื“ืจ (ืœื“ื•ื’ืžื”, ืชืžื•ื ื•ืช ืžืขืจื›ืช ืฉื‘ื”ืŸ ื›ืœ ื”ืงื•ื“ ื”ื“ืจื•ืฉ ืžืจืืฉ), ื ื™ืชืŸ ืคืฉื•ื˜ ืœื”ืฉืžื™ื˜ ืืช ื”ืกืคืจื™ื™ื” ื”ื–ื• (ื•ื”ืชืœื•ืช ืฉืœื” ื‘-LLVM).
    • ื”ื™ืกืง ืžืกื•ื’ ืžื•ืชื ื” ืืคืฉืจื™ ื›ืขืช ืขืœ ื™ื“ื™ ื”ืขื‘ืจืช ืืจื’ื•ืžื ื˜ ืœืฉื™ื˜ื”. ืœื“ื•ื’ืžื”, ืขื‘ื•ืจ Base.ifelse(isa(x, Int), x, 0) ืžื—ื–ื™ืจื” ::Int ื’ื ืื ื”ืกื•ื’ ืฉืœ x ืื™ื ื• ื™ื“ื•ืข.
    • SROA (Scalar Replacement of Aggregates) ืฉื•ืคืจ: ืžื‘ื˜ืœ ืงืจื™ืื•ืช getfield ืขื ืฉื“ื•ืช ื’ืœื•ื‘ืœื™ื™ื ืžืชืžื™ื“ื™ื, ืžื‘ื˜ืœ ืžื‘ื ื™ื ื”ื ื™ืชื ื™ื ืœืฉื™ื ื•ื™ ืขื ืฉื“ื•ืช ืœื ืžืื•ืชื—ืœื™ื, ืžืฉืคืจ ื‘ื™ืฆื•ืขื™ื ื•ื˜ื™ืคื•ืœ ื‘ืงืจื™ืื•ืช getfield ืžืงื•ื ื ื•ืช.
    • ืกื•ื’ ืžืกืงื ื•ืช ืขื•ืงื‘ ืื—ืจ ื”ืฉืคืขื•ืช ืฉื•ื ื•ืช - ืชื•ืคืขื•ืช ืœื•ื•ืื™ ื•ืื™-ื”ื•ืจื“ื”. ื ืœืงื—ืช ื‘ื—ืฉื‘ื•ืŸ ื”ืชืคืฉื˜ื•ืช ืžืชืžื“ืช, ืžื” ืฉืžืฉืคืจ ืžืฉืžืขื•ืชื™ืช ืืช ื‘ื™ืฆื•ืขื™ ื–ืžืŸ ื”ื”ื™ื“ื•ืจ. ื‘ืžืงืจื™ื ืžืกื•ื™ืžื™ื, ืœืžืฉืœ, ืงืจื™ืื•ืช ืœืคื•ื ืงืฆื™ื•ืช ืฉืœื ื ื™ืชืŸ ืœื”ื˜ืžื™ืŸ ืืš ืื™ื ืŸ ืžืฉืคื™ืขื•ืช ืขืœ ื”ืชื•ืฆืื” ื™ื™ืžื—ืงื• ื‘ื–ืžืŸ ื”ืจื™ืฆื”. ื ื™ืชืŸ ืœื”ื—ืœื™ืฃ ื›ืœืœื™ื ืœืืคืงื˜ื™ื ื‘ืื•ืคืŸ ื™ื“ื ื™ ื‘ืืžืฆืขื•ืช ื”ืžืืงืจื• Base.@assume_effects.
    • ื”ื™ื“ื•ืจ ืžืจืืฉ (ืขื ื”ื ื—ื™ื•ืช ื”ื™ื“ื•ืจ ืžืจืืฉ ืžืคื•ืจืฉื•ืช ืื• ืขื•ืžืกื™ ืขื‘ื•ื“ื” ืžื•ื’ื“ืจื™ื) ื—ื•ืกืš ื›ืขืช ืงื•ื“ ืžื•ื’ื“ืจ ื™ื•ืชืจ, ื•ื›ืชื•ืฆืื” ืžื›ืš ื‘ื™ืฆื•ืข ืžื”ื™ืจ ื™ื•ืชืจ ื‘ืคืขื ื”ืจืืฉื•ื ื”. ื›ืœ ืฉื™ืœื•ื‘ื™ ืฉื™ื˜ื”/ืกื•ื’ื™ื ื—ื“ืฉื™ื ื”ื“ืจื•ืฉื™ื ืœื—ื‘ื™ืœื” ืฉืœืš, ืœืœื ืงืฉืจ ืœืžืงื•ื ืฉื‘ื• ื”ื•ื’ื“ืจื• ืฉื™ื˜ื•ืช ืืœื•, ื ื™ืชืŸ ื›ืขืช ืœืื—ืกืŸ ื‘ืžื˜ืžื•ืŸ ื‘ืงื•ื‘ืฅ ื”ื”ื™ื“ื•ืจ ื”ืžืงื“ื™ื ืื ื”ื ื ืงืจืื™ื ืขืœ ื™ื“ื™ ืฉื™ื˜ื” ื”ืฉื™ื™ื›ืช ืœื—ื‘ื™ืœื” ืฉืœืš.
  • ืฉื™ื ื•ื™ื™ื ื‘ืคืจืžื˜ืจื™ื ืฉืœ ืฉื•ืจืช ื”ืคืงื•ื“ื”
    • ื”ืชื ื”ื’ื•ืช ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ืœื ื™ื˜ื•ืจ ื”ืฆื”ืจื•ืช @inbounds ื”ื™ื ื›ืขืช ื”ืืคืฉืจื•ืช ื”ืื•ื˜ื•ืžื˜ื™ืช ื‘---check-bounds=yes|no|auto.
    • ืืคืฉืจื•ืช ื—ื“ืฉื” ืฉืœ "--strip-metadata" ืœื”ืกืจืช ืžื—ืจื•ื–ื•ืช docstrings, ืžื™ื“ืข ืขืœ ืžื™ืงื•ื ืžืงื•ืจ ื•ืฉืžื•ืช ืžืฉืชื ื™ื ืžืงื•ืžื™ื™ื ื‘ืขืช ื™ืฆื™ืจืช ืชืžื•ื ืช ืžืขืจื›ืช.
    • ืืคืฉืจื•ืช ื—ื“ืฉื” "--strip-ir" ื›ื“ื™ ืœืืคืฉืจ ืœืžื”ื“ืจ ืœื”ืกื™ืจ ืืช ื™ื™ืฆื•ื’ ืงื•ื“ ื”ืžืงื•ืจ ื”ื‘ื™ื ื™ื™ื ื‘ืขืช ื‘ื ื™ื™ืช ืชืžื•ื ืช ื”ืžืขืจื›ืช. ื”ืชืžื•ื ื” ื”ืžืชืงื‘ืœืช ืชืขื‘ื•ื“ ืจืง ืื ื ืขืฉื” ืฉื™ืžื•ืฉ ื‘-"--compile=all" ืื• ืื ื›ืœ ื”ืงื•ื“ ื”ื ื“ืจืฉ ื”ื™ื“ื•ืจ ืžืจืืฉ.
    • ืื ื”ืชื• "-" ืžืฆื•ื™ืŸ ื‘ืžืงื•ื ืฉื ื”ืงื•ื‘ืฅ, ืงื•ื“ ื”ื”ืคืขืœื” ื ืงืจื ืžื–ืจื ื”ืงืœื˜ ื”ืกื˜ื ื“ืจื˜ื™.
  • ืฉื™ื ื•ื™ื™ื ื‘ืชืžื™ื›ื” ื‘ืจื™ื‘ื•ื™ ื”ืฉื—ืœื•ืช
    • Threads.@threads ื›ื‘ืจื™ืจืช ืžื—ื“ืœ ืžืฉืชืžืฉ ื‘ืืคืฉืจื•ืช ื”ืชื–ืžื•ืŸ ื”ื—ื“ืฉื” :dynamic, ื”ืฉื•ื ื” ืžื”ืžืฆื‘ ื”ืงื•ื“ื ื‘ื›ืš ืฉื”ืื™ื˜ืจืฆื™ื•ืช ื™ืชื•ื–ืžื ื• ื‘ืื•ืคืŸ ื“ื™ื ืžื™ ืขืœ ืคื ื™ ืฉืจืฉื•ืจื™ ืขื•ื‘ื“ื™ื ื–ืžื™ื ื™ื ื‘ืžืงื•ื ืœื”ื™ื•ืช ืžื•ืงืฆื•ืช ืœื›ืœ ืฉืจืฉื•ืจ. ืžืฆื‘ ื–ื” ืžืืคืฉืจ ื”ืคืฆื” ื˜ื•ื‘ื” ื™ื•ืชืจ ืฉืœ ืœื•ืœืื•ืช ืžืงื•ื ื ื•ืช ืขื @spawn ื•-@threads.
  • ืคื•ื ืงืฆื™ื•ืช ื—ื“ืฉื•ืช ื‘ืกืคืจื™ื™ื”
    • eachsplit(str) ืœื‘ื™ืฆื•ืข split(str) ืžืกืคืจ ืคืขืžื™ื.
    • allequal(itr) ื›ื“ื™ ืœื‘ื“ื•ืง ืื ื›ืœ ื”ืืœืžื ื˜ื™ื ื‘ืื™ื˜ืจื˜ื•ืจ ืฉื•ื•ื™ื.
    • ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘-hardlink(src, dst) ืœื™ืฆื™ืจืช ืงื™ืฉื•ืจื™ื ืงืฉื™ื—ื™ื.
    • setcpuaffinity(cmd, cpus) ื›ื“ื™ ืœื”ื’ื“ื™ืจ ืืช ื”ื–ื™ืงื” ืฉืœ ืœื™ื‘ืช ื”ืžืขื‘ื“ ืœืชื”ืœื™ื›ื™ื ืฉื”ื•ืฉืงื•.
    • diskstat(path=pwd()) ื›ื“ื™ ืœืงื‘ืœ ืกื˜ื˜ื™ืกื˜ื™ืงืช ื“ื™ืกืง.
    • ืžืืงืจื• @showtime ื—ื“ืฉ ื›ื“ื™ ืœื”ืฆื™ื’ ื”ืŸ ืืช ื”ืฉื•ืจื” ื”ื ื‘ื“ืงืช ื•ื”ืŸ ืืช ื“ื•ื— @time.
    • LazyString ื•ืžืงืจื• ืขืฆืœืŸ"str" โ€‹โ€‹ื ื•ืกืคื• ื›ื“ื™ ืœืชืžื•ืš ื‘ื‘ื ื™ื™ื” ืขืฆืœื ื™ืช ืฉืœ ื”ื•ื“ืขื•ืช ืฉื’ื™ืื” ื‘ื ืชื™ื‘ื™ ืฉื’ื™ืื”.
    • ืชื•ืงื ื” ื‘ืขื™ื™ืช ื‘ืžืงื‘ื™ืœ ื‘-Dict ื•ื‘ืื•ื‘ื™ื™ืงื˜ื™ื ื ื’ื–ืจื™ื ืื—ืจื™ื ื›ื’ื•ืŸ keys(::Dict), values(::Dict) ื•-Set. ื›ืขืช ื ื™ืชืŸ ืœืงืจื•ื ืœืฉื™ื˜ื•ืช ืื™ื˜ืจืฆื™ื” ื‘ืžื™ืœื•ืŸ ืื• ื‘ืงื‘ื•ืฆื”, ื›ืœ ืขื•ื“ ืื™ืŸ ืงืจื™ืื•ืช ืฉืžืฉื ื•ืช ืืช ื”ืžื™ืœื•ืŸ ืื• ื”ืกื˜.
    • ืœ-@time ื•ืœ-@timev ื™ืฉ ื›ืขืช ืชื™ืื•ืจ ืื•ืคืฆื™ื•ื ืœื™, ื”ืžืืคืฉืจ ืœืš ืœื”ื•ืกื™ืฃ ื”ืขืจื•ืช ืœืžืงื•ืจ ื“ื•ื—ื•ืช ื”ื–ืžืŸ, ืœืžืฉืœ. @time "Evaluating foo" foo().
    • ื˜ื•ื•ื— ืœื•ืงื— ืขืฆื™ืจื” ืื• ืื•ืจืš ื›ืืจื’ื•ืžื ื˜ ืžื™ืœืช ื”ืžืคืชื— ื”ื™ื—ื™ื“ ืฉืœื•.
    • ื“ื™ื•ืง ื•-setprecision ืžืงื‘ืœื™ื ื›ืขืช ื‘ืกื™ืก ื›ืžื™ืœืช ืžืคืชื—
    • ืื•ื‘ื™ื™ืงื˜ื™ ืฉืงืข TCP ืžืกืคืงื™ื ื›ืขืช ืฉื™ื˜ืช ื›ืชื™ื‘ื” ืงืจื•ื‘ื” ื•ืชื•ืžื›ื™ื ื‘ืฉื™ืžื•ืฉ ื‘ืžืฆื‘ ื—ืฆื™ ืคืชื•ื—.
    • ืืงืกื˜ืจืžื” ืžืงื‘ืœืช ื›ืขืช ื˜ื™ืขื•ืŸ ื”ืชื—ืœืชื™.
    • Iterators.countfrom ืขื›ืฉื™ื• ืžืงื‘ืœ ื›ืœ ืกื•ื’ ืฉืžื’ื“ื™ืจ ืฉื™ื˜ืช +.
    • @time ืžืงืฆื” ื›ืขืช ืืช % ืžื”ื–ืžืŸ ื”ืžื•ืฉืงืข ื‘ื”ื™ื“ื•ืจ ืžื—ื“ืฉ ืฉืœ ืฉื™ื˜ื•ืช ืขื ืกื•ื’ื™ื ืฉื”ืฉืชื ื•.
  • ืฉื™ื ื•ื™ื™ื ื‘ืกืคืจื™ื™ื” ืจื’ื™ืœื”
    • ืžืคืชื—ื•ืช ืขื ืขืจืš ืฉื•ื ื“ื‘ืจ ืื™ื ื• ืžื•ืกืจ ื›ืขืช ืžื”ืกื‘ื™ื‘ื” ื‘-addenv.
    • Iterators.reverse (ื•ืœื›ืŸ ื”ืื—ืจื•ืŸ) ืชื•ืžืš ื‘ื›ืœ ืฉื•ืจื”.
    • ืคื•ื ืงืฆื™ื™ืช ื”ืื•ืจืš ืขื‘ื•ืจ ื˜ื•ื•ื—ื™ื ืžืกื•ื’ื™ื ืžืกื•ื™ืžื™ื ืื™ื ื” ื‘ื•ื“ืงืช ืขื•ื“ ื”ืฆืคืช ืžืกืคืจื™ื ืฉืœืžื™ื. ืคื•ื ืงืฆื™ื” ื—ื“ืฉื”, checked_length, ื–ืžื™ื ื”; ื”ื™ื ืžื›ื™ืœื” ืœื•ื’ื™ืงืช ื‘ืงืจืช ื”ืขื‘ืจืช ืกื™ื‘ื™ื•ืช. ื‘ืžื™ื“ืช ื”ืฆื•ืจืš, ื”ืฉืชืžืฉ ื‘-SaferIntegers.jl ื›ื“ื™ ืœื‘ื ื•ืช ืืช ืกื•ื’ ื”ื˜ื•ื•ื—.
    • ื”ืื™ื˜ืจื˜ื•ืจ Iterators.Reverse ืžื™ื™ืฉื ื›ืœ ื”ื™ืคื•ืš ืื™ื ื“ืงืก ื‘ืžื™ื“ืช ื”ืืคืฉืจ.
  • ืžื ื”ืœ ืืจื™ื–ื”
    • ืžื—ื•ื•ื ื™ื ื—ื“ืฉื™ื โŒƒ ื•- โŒ… ืœืฆื“ ื—ื‘ื™ืœื•ืช ื‘ืกื˜ื˜ื•ืก "pkg>" ืฉืขื‘ื•ืจืŸ ื–ืžื™ื ื•ืช ื’ืจืกืื•ืช ื—ื“ืฉื•ืช. โŒ… ืžืฆื™ื™ืŸ ืฉืœื ื ื™ืชืŸ ืœื”ืชืงื™ืŸ ื’ืจืกืื•ืช ื—ื“ืฉื•ืช.
    • ืืจื’ื•ืžื ื˜ ื—ื“ืฉ ืžื™ื•ืฉืŸ::Bool ืœ-Pkg.status (--outdated ืื• -o ื‘ืžืฆื‘ REPL) ื›ื“ื™ ืœื”ืฆื™ื’ ืžื™ื“ืข ืขืœ ื—ื‘ื™ืœื•ืช ืžื’ืจืกืื•ืช ืงื•ื“ืžื•ืช.
    • ืืจื’ื•ืžื ื˜ ื—ื“ืฉ compat::Bool ืœ-Pkg.status (--compat ืื• -c ื‘ืžืฆื‘ REPL) ื›ื“ื™ ืœื”ืฆื™ื’ ื›ืœ ืขืจื›ื™ [compat] ื‘-Project.toml.
    • ืžืฆื‘ ื—ื“ืฉ "pkg>compat" (ื•-Pkg.compat) ืœื”ื’ื“ืจืช ืขืจื›ื™ ืชืื™ืžื•ืช ืœืคืจื•ื™ืงื˜. ืžืกืคืง ืขื•ืจืš ืื™ื ื˜ืจืืงื˜ื™ื‘ื™ ื‘ืืžืฆืขื•ืช "pkg>compat" ืื• ื‘ืงืจืช ืจืฉื•ืžื•ืช ื™ืฉื™ืจื” ื‘ืืžืฆืขื•ืช "pkg>Foo 0.4,0.5", ืฉื™ื›ื•ืœ ืœื˜ืขื•ืŸ ืจืฉื•ืžื•ืช ื ื•ื›ื—ื™ื•ืช ื‘ืืžืฆืขื•ืช ื”ืฉืœืžืช ื›ืจื˜ื™ืกื™ื•ืช. ื›ืœื•ืžืจ, "pkg> compat Fo " ืžืชืขื“ื›ืŸ ืื•ื˜ื•ืžื˜ื™ืช ืœ-"pkg>Foo 0.4,0.5" ื›ื“ื™ ืœืืคืฉืจ ืขืจื™ื›ื” ืฉืœ ืขืจืš ืงื™ื™ื.
    • Pkg ืžื ืกื” ื›ืขืช ืœื”ื•ืจื™ื“ ื—ื‘ื™ืœื•ืช ืžืฉืจืช ื—ื‘ื™ืœื•ืช ืจืง ืื ื”ืฉืจืช ืขื•ืงื‘ ืื—ืจ ื”ืจื™ืฉื•ื ื”ืžื›ื™ืœ ืืช ื”ื—ื‘ื™ืœื”.
    • Pkg.instantiate ืชื•ืฆื™ื ื›ืขืช ืื–ื”ืจื” ื›ืืฉืจ Project.toml ืื™ื ื• ืžืกื•ื ื›ืจืŸ ืขื Manifest.toml. ื”ื•ื ืขื•ืฉื” ื–ืืช ื‘ื”ืชื‘ืกืก ืขืœ hash ืฉืœ ื”-deps ื•ืจืฉื•ืžื•ืช ื”-compat ืฉืœ ื”ืคืจื•ื™ืงื˜ (ืžืชืขืœืžื™ื ืžืฉื“ื•ืช ืื—ืจื™ื) ื‘ืžื ื™ืคืกื˜ ื‘ืขืช ืคืชืจื•ืŸ ื–ื”, ื›ืš ืฉื ื™ืชืŸ ืœื–ื”ื•ืช ื›ืœ ืฉื™ื ื•ื™ ื‘- Project.toml deps ืื• ืจืฉื•ืžื•ืช ื”-compat ืžื‘ืœื™ ืœืคืชื•ืจ ืžื—ื“ืฉ.
    • ืื "pkg>add" ืœื ื™ื›ื•ืœ ืœืžืฆื•ื ื—ื‘ื™ืœื” ืขื ื”ืฉื ื”ื ืชื•ืŸ, ื”ื•ื ื™ืฆื™ืข ื›ืขืช ื—ื‘ื™ืœื•ืช ืขื ืฉืžื•ืช ื“ื•ืžื™ื ืฉื ื™ืชืŸ ืœื”ื•ืกื™ืฃ.
    • ื”ื’ืจืกื” ืฉืœ Julia ื”ืžืื•ื—ืกื ืช ื‘ืžื ื™ืคืกื˜ ื›ื‘ืจ ืœื ื›ื•ืœืœืช ืืช ืžืกืคืจ ื”-build, ื›ืœื•ืžืจ ืžืืกื˜ืจ ื™ื™ื›ืชื‘ ื›ืขืช ื›-1.9.0-DEV.
    • ื‘ื™ื˜ื•ืœ ื”ื‘ื“ื™ืงื” "pkg>" ื™ื–ื•ื”ื” ื›ืขืช ื‘ืื•ืคืŸ ืขืงื‘ื™ ื™ื•ืชืจ, ื•ื™ื•ื—ื–ืจ ื›ืจืื•ื™ ืœ-REPL.
  • InteractiveUtils
    • ืžืืงืจื• ื—ื“ืฉ ืฉืœ @time_imports ืœื“ื™ื•ื•ื— ืขืœ ื”ื–ืžืŸ ื”ืžื•ืฉืงืข ื‘ื™ื™ื‘ื•ื โ€‹โ€‹ื—ื‘ื™ืœื•ืช ื•ื”ืชืœื•ืช ืฉืœื”ืŸ, ืชื•ืš ื”ื“ื’ืฉืช ื–ืžืŸ ืงื•ืžืคื™ืœืฆื™ื” ื•ื”ื™ื“ื•ืจ ืžื—ื“ืฉ ื›ืื—ื•ื– ืžื”ื™ื™ื‘ื•ื.
  • ืืœื’ื‘ืจื” ืœื™ื ื™ืืจื™ืช
    • ืชืช-ืžื•ื“ื•ืœ BLAS ืชื•ืžืš ื›ืขืช ื‘ืคื•ื ืงืฆื™ื•ืช BLAS spr! ื‘ืจืžื” 2.
    • ื”ืกืคืจื™ื™ื” ื”ืกื˜ื ื“ืจื˜ื™ืช LinearAlgebra.jl ืื™ื ื” ืชืœื•ื™ื” ืœื—ืœื•ื˜ื™ืŸ ื‘-SparseArrays.jl, ื”ืŸ ืžื ืงื•ื“ืช ืžื‘ื˜ ืฉืœ ืงื•ื“ ืžืงื•ืจ ื•ื”ืŸ ืžื ืงื•ื“ืช ืžื‘ื˜ ืฉืœ ื‘ื“ื™ืงืช ื™ื—ื™ื“ื•ืช. ื›ืชื•ืฆืื” ืžื›ืš, ืžืขืจื›ื™ื ื“ืœื™ืœื™ื ืื™ื ื ืžื•ื—ื–ืจื™ื ืขื•ื“ (ื‘ืžืจื•ืžื–) ืขืœ ื™ื“ื™ ืฉื™ื˜ื•ืช ืž-LinearAlgebra ื”ืžื•ื—ืœื•ืช ืขืœ ืื•ื‘ื™ื™ืงื˜ื™ื Base ืื• LinearAlgebra. ื‘ืคืจื˜, ื–ื” ืžื•ื‘ื™ืœ ืœืฉื™ื ื•ื™ื™ื ื”ืฉื‘ื™ืจื™ื ื”ื‘ืื™ื:
      • ืฉืจืฉื•ืจื™ื ื‘ืืžืฆืขื•ืช ืžื˜ืจื™ืฆื•ืช "ื“ืœื™ืœื•ืช" ืžื™ื•ื—ื“ื•ืช (ืœืžืฉืœ ืืœื›ืกื•ื ื™ื•ืช) ืžื—ื–ื™ืจื•ืช ื›ืขืช ืžื˜ืจื™ืฆื•ืช ืฆืคื•ืคื•ืช; ื›ืชื•ืฆืื” ืžื›ืš, ืฉื“ื•ืช D1 ื•-D2 ืฉืœ ืื•ื‘ื™ื™ืงื˜ื™ SVD ืฉื ื•ืฆืจื• ืขืœ ื™ื“ื™ ืงืจื™ืื•ืช getproperty ื”ื ื›ืขืช ืžื˜ืจื™ืฆื•ืช ืฆืคื•ืคื•ืช.
      • ื”ืฉื™ื˜ื” ื”ื“ื•ืžื” (::SpecialSparseMatrix, ::Type, ::Dims) ืžื—ื–ื™ืจื” ืžื˜ืจื™ืฆืช null ืฆืคื•ืคื”. ื›ืชื•ืฆืื” ืžื›ืš, ืชื•ืฆืจื™ื ืฉืœ ืžื˜ืจื™ืฆื•ืช ืชืœืช ืืœื›ืกื•ื ื™ื•ืช ื“ื•, ืฉืœื•ืฉ ื•ืกื™ืžื˜ืจื™ื•ืช ื–ื” ืขื ื–ื” ืžื•ื‘ื™ืœื™ื ืœื™ืฆื™ืจืช ืžื˜ืจื™ืฆื” โ€‹โ€‹ืฆืคื•ืคื”. ื‘ื ื•ืกืฃ, ื‘ื ื™ื™ืช ืžื˜ืจื™ืฆื•ืช ื“ื•ืžื•ืช ืขื ืฉืœื•ืฉื” ืืจื’ื•ืžื ื˜ื™ื ืžืžื˜ืจื™ืฆื•ืช "ื“ืœื™ืœื•ืช" ืžื™ื•ื—ื“ื•ืช ืžืžื˜ืจื™ืฆื•ืช (ืœื ืกื˜ื˜ื™ื•ืช) ื ื›ืฉืœืช ื›ืขืช ืขืงื‘ "XNUMX(::Type{Matrix{T}})".
  • Printf
    • %s ื•-%c ืžืฉืชืžืฉื™ื ื›ืขืช ื‘ืืจื’ื•ืžื ื˜ textwidth ื›ื“ื™ ืœืขืฆื‘ ืืช ื”ืจื•ื—ื‘.
  • ืคึผืจื•ึนืคึดื™ืœ
    • ืคืจื•ืคื™ืœ ืขื•ืžืก ืžืขื‘ื“ ืžืชืขื“ ื›ืขืช ืžื˜ื ื ืชื•ื ื™ื ื›ื•ืœืœ ืฉืจืฉื•ืจื™ื ื•ืžืฉื™ืžื•ืช. ืœ-Profile.print() ื™ืฉ ืืจื’ื•ืžื ื˜ groupby ื—ื“ืฉ ื”ืžืืคืฉืจ ืœืš ืœืงื‘ืฅ ืฉืจืฉื•ืจื™ื, ืžืฉื™ืžื•ืช ืื• ืชืช-ืฉืจืฉื•ืจื™ื/ืžืฉื™ืžื•ืช, ืžืฉื™ืžื•ืช/ืฉืจืฉื•ืจื™ื ื•ืืจื’ื•ืžื ื˜ื™ื ืฉืœ ืฉืจืฉื•ืจื™ื ื•ืžืฉื™ืžื•ืช ื›ื“ื™ ืœืกืคืง ืกื™ื ื•ืŸ. ื‘ื ื•ืกืฃ, ืื—ื•ื– ื”ื ื™ืฆื•ืœ ืžื“ื•ื•ื— ื›ืขืช ื›ืกืš ื›ื•ืœืœ ืื• ืœื›ืœ ืคืชื™ืœ, ืชืœื•ื™ ืื ื”ืคืชื™ืœ ืื™ื ื• ืคืขื™ืœ ืื• ืœื ื‘ื›ืœ ื“ื’ื™ืžื”. Profile.fetch() ื›ื•ืœืœ ืืช ื”ืžื˜ื ื ืชื•ื ื™ื ื”ื—ื“ืฉื™ื ื›ื‘ืจื™ืจืช ืžื—ื“ืœ. ืขื‘ื•ืจ ืชืื™ืžื•ืช ืœืื—ื•ืจ ืขื ืฆืจื›ื ื™ื ื—ื™ืฆื•ื ื™ื™ื ืฉืœ ื ืชื•ื ื™ ืคืจื•ืคื™ืœ, ื ื™ืชืŸ ืœื”ื—ืจื™ื’ ืื•ืชื• ืขืœ ื™ื“ื™ ื”ืขื‘ืจืช include_meta=false.
    • ืžื•ื“ื•ืœ Profile.Allocs ื”ื—ื“ืฉ ืžืืคืฉืจ ืœืš ืœื™ืฆื•ืจ ืคืจื•ืคื™ืœ ืฉืœ ื”ืงืฆืื•ืช ื–ื™ื›ืจื•ืŸ. ื ืจืฉื ืขืงื‘ื•ืช ืžื—ืกื ื™ืช ืฉืœ ื”ืกื•ื’ ื•ื”ื’ื•ื“ืœ ืฉืœ ื›ืœ ื”ืงืฆืืช ื–ื™ื›ืจื•ืŸ, ื•ื”ืืจื’ื•ืžื ื˜ sample_rate ืžืืคืฉืจ ืœื“ืœื’ ืขืœ ืžืกืคืจ ื ื™ืชืŸ ืœื”ื’ื“ืจื” ืฉืœ ื”ืงืฆืื•ืช, ืžื” ืฉืžืคื—ื™ืช ืืช ืชืงืจืช ื”ื‘ื™ืฆื•ืขื™ื.
    • ื›ืขืช ื ื™ืชืŸ ืœื”ืจื™ืฅ ืคืจื•ืคื™ืœ CPU ืฉืœ ืžืฉืš ื–ืžืŸ ืงื‘ื•ืข ืขืœ ื™ื“ื™ ื”ืžืฉืชืžืฉ ื‘ื–ืžืŸ ืฉื”ืžืฉื™ืžื•ืช ืคื•ืขืœื•ืช ืžื‘ืœื™ ืœื˜ืขื•ืŸ ืชื—ื™ืœื” ืืช ื”ืคืจื•ืคื™ืœ, ื•ื”ื“ื•ื— ื™ื•ืฆื’ ื‘ื–ืžืŸ ื”ืจื™ืฆื”. ื‘-MacOS ื•ื‘-FreeBSD, ื”ืงืฉ ctrl-t ืื• ื”ืชืงืฉืจ ืœ-SIGINFO. ืขื‘ื•ืจ ืคืœื˜ืคื•ืจืžื•ืช ืื—ืจื•ืช, ื”ืคืขืœ ืืช SIGUSR1, ื›ืœื•ืžืจ. % kill -USR1 $julia_pid. ื–ื” ืœื ื–ืžื™ืŸ ื‘-Windows.
  • ืชืฉื•ื‘ื”
    • RadioMenu ืชื•ืžืš ื›ืขืช ื‘ืงื™ืฆื•ืจื™ ืžืงืœื“ืช ื ื•ืกืคื™ื ืœื‘ื—ื™ืจื” ื™ืฉื™ืจื” ืฉืœ ืืคืฉืจื•ื™ื•ืช.
    • ื”ืจืฆืฃ "?(x, y" ื•ืื—ืจื™ื• ืœื—ื™ืฆื” ืขืœ TAB ืžืฆื™ื’ ืืช ื›ืœ ื”ืฉื™ื˜ื•ืช ืฉื ื™ืชืŸ ืœืงืจื•ื ืขื ื”ืืจื’ื•ืžื ื˜ื™ื x, y, .... (ืจื•ื•ื— ืžื•ื‘ื™ืœ ืžื•ื ืข ืžืžืš ืœื”ื™ื›ื ืก ืœืžืฆื‘ ืขื–ืจื”.) "MyModule.?(x, y " ืžื’ื‘ื™ืœ ืืช ื”ื—ื™ืคื•ืฉ ืœ-"MyModule". ืœื—ื™ืฆื” ืขืœ TAB ืžื—ื™ื™ื‘ืช ืฉืœืคื—ื•ืช ืืจื’ื•ืžื ื˜ ืื—ื“ ื™ื”ื™ื” ืžืกื•ื’ ืกืคืฆื™ืคื™ ื™ื•ืชืจ ืžื›ืœ. ืื• ื”ืฉืชืžืฉ ื‘-SHIFT-TAB ื‘ืžืงื•ื ื‘-TAB ื›ื“ื™ ืœืืคืฉืจ ืฉื™ื˜ื•ืช ืชื•ืืžื•ืช ื›ืœืฉื”ืŸ.
    • ื”ืžืฉืชื ื” ื”ื’ืœื•ื‘ืœื™ ื”ื—ื“ืฉ err ืžืืคืฉืจ ืœืš ืœืงื‘ืœ ืืช ื”ื—ืจื™ื’ ื”ืื—ืจื•ืŸ, ื‘ื“ื•ืžื” ืœื”ืชื ื”ื’ื•ืช ืฉืœ ans ืขื ื”ืชื’ื•ื‘ื” ื”ืื—ืจื•ื ื”. ื”ื–ื ืช ืฉื’ื™ืื” ืžื“ืคื™ืกื” ืžื—ื“ืฉ ืืช ืคืจื˜ื™ ื”ื—ืจื™ื’ื”.
  • SparseArrays
    • ื”ืขื‘ื™ืจ ืืช ืงื•ื“ SparseArrays ืžืžืื’ืจ Julia ืœืžืื’ืจ SparseArrays.jl ื”ื—ื™ืฆื•ื ื™.
    • ืคื•ื ืงืฆื™ื•ืช ื”ืฉืจืฉื•ืจ ื”ื—ื“ืฉื•ืช sparse_hcat, sparse_vcat ื•-sparse_hvcat ืžื—ื–ื™ืจื•ืช ืกื•ื’ SparseMatrixCSC ืœืœื ืงืฉืจ ืœืกื•ื’ื™ ืืจื’ื•ืžื ื˜ื™ ื”ืงืœื˜. ื–ื” ื”ื›ืจื—ื™ ื›ื“ื™ ืœืื—ื“ ืืช ื”ืžื ื’ื ื•ืŸ ืœื”ื“ื‘ืงืช ืžื˜ืจื™ืฆื•ืช ืœืื—ืจ ื”ืคืจื“ืช ื”ืงื•ื“ LinearAlgebra.jl ื•-SparseArrays.jl.
  • ืจื™ืฉื•ื
    • ืจืžื•ืช ื”ืจื™ืฉื•ื ื”ืกื˜ื ื“ืจื˜ื™ื•ืช BelowMinLevel, Debug, Info, Warn, Error ื•-AboveMaxLevel ืžื™ื•ืฆืื•ืช ื›ืขืช ืžืกืคืจื™ื™ืช Logging ื”ืจื’ื™ืœื”.
  • Unicode
    • ื ื•ืกืคื” ืคื•ื ืงืฆื™ื” isequal_normalized ืœื‘ื“ื™ืงืช ืฉืงื™ืœื•ืช Unicode ืžื‘ืœื™ ืœื‘ื ื•ืช ื‘ืื•ืคืŸ ืžืคื•ืจืฉ ืžื—ืจื•ื–ื•ืช ืžื ื•ืจืžืœื•ืช.
    • ื”ืคื•ื ืงืฆื™ื” Unicode.normalize ืžืงื‘ืœืช ื›ืขืช ืืช ืžื™ืœืช ื”ืžืคืชื— charttransform, ืฉื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื” ื›ื“ื™ ืœืกืคืง ืžื™ืคื•ื™ ืชื•ื•ื™ื ืžื•ืชืืžื™ื ืื™ืฉื™ืช, ื•ื”ืคื•ื ืงืฆื™ื” Unicode.julia_chartransform ืžืกื•ืคืงืช ื’ื ื›ื“ื™ ืœืฉื—ื–ืจ ืืช ื”ืžื™ืคื•ื™ ื”ืžืฉืžืฉ ื›ืืฉืจ ืžื ืชื— Julia ืžื ืจืžืœ ืžื–ื”ื™ื.
  • ืžึดื‘ึฐื—ึธืŸ
    • ื›ืขืช ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘-'@test_throws "ื”ื•ื“ืขื” ื›ืœืฉื”ื™" triggers_error()' ื›ื“ื™ ืœื‘ื“ื•ืง ืื ื˜ืงืกื˜ ื”ืฉื’ื™ืื” ื”ืžื•ืฆื’ ืžื›ื™ืœ ืฉื’ื™ืืช "ื”ื•ื“ืขื” ื›ืœืฉื”ื™", ืœืœื ืงืฉืจ ืœืกื•ื’ ื”ื—ืจื™ื’ ื”ืกืคืฆื™ืคื™. ื’ื ื‘ื™ื˜ื•ื™ื™ื ืจื’ื•ืœืจื™ื™ื, ืจืฉื™ืžื•ืช ืžื—ืจื•ื–ื•ืช ื•ืคื•ื ืงืฆื™ื•ืช ืชื•ืืžื•ืช ื ืชืžื›ื™ื.
    • ื›ืขืช ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘-@testset foo() ืœื™ืฆื™ืจืช ืขืจื›ืช ื‘ื“ื™ืงื” ืžืคื•ื ืงืฆื™ื” ื ืชื•ื ื”. ืฉื ืžืงืจื” ื”ืžื‘ื—ืŸ ื”ื•ื ืฉื ื”ืคื•ื ืงืฆื™ื” ื”ื ืงืจืืช. ื”ืคื•ื ืงืฆื™ื” ื”ื ืงืจืืช ืขืฉื•ื™ื” ืœื”ื›ื™ืœ @test ื•ื”ื’ื“ืจื•ืช @testset ืื—ืจื•ืช, ื›ื•ืœืœ ืขื‘ื•ืจ ืงืจื™ืื•ืช ืœืคื•ื ืงืฆื™ื•ืช ืื—ืจื•ืช, ืชื•ืš ื”ืงืœื˜ืช ื›ืœ ืชื•ืฆืื•ืช ื”ื‘ื“ื™ืงื” ื”ื‘ื™ื ื™ื™ื.
    • TestLogger ื•-LogRecord ืžื™ื•ืฆืื™ื ื›ืขืช ืžืกืคืจื™ื™ืช ื”ื‘ื“ื™ืงื” ื”ืจื’ื™ืœื”.
  • ืžื•ืคืฅ
    • SSHManager ืชื•ืžืš ื›ืขืช ื‘ืฉืจืฉื•ืจื™ ืขื•ื‘ื“ื™ื ืขื ืžืขื˜ืคืช csh/tcsh ื‘ืืžืฆืขื•ืช ืฉื™ื˜ืช addprocs() ื•ื”ืคืจืžื˜ืจ shell=:csh.
  • ืฉื™ื ื•ื™ื™ื ืื—ืจื™ื
    • ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘-GC.enable_logging(true) ืœืชื™ืขื•ื“ ื›ืœ ืคืขื•ืœืช ืื™ืกื•ืฃ ืืฉืคื” ืขื ื”ื–ืžืŸ ื•ื›ืžื•ืช ื”ื–ื™ื›ืจื•ืŸ ืฉื ืืกืฃ.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”