рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдЬреВрд▓рд┐рдпрд╛ 1.9 рдЙрдкрд▓рдмреНрдз рд╣реИ

рдЬреВрд▓рд┐рдпрд╛ 1.9 рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреА рд░рд┐рд▓реАрдЬрд╝ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреА рдЧрдИ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди, рдЧрддрд┐рд╢реАрд▓ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдФрд░ рд╕рдорд╛рдирд╛рдВрддрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЯреВрд▓ рдЬреИрд╕реЗ рдЧреБрдг рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЬреВрд▓рд┐рдпрд╛ рдХрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ MATLAB рдХреЗ рдХрд░реАрдм рд╣реИ, рд░реВрдмреА рдФрд░ рд▓рд┐рд╕реНрдк рд╕реЗ рдХреБрдЫ рддрддреНрд╡ рдЙрдзрд╛рд░ рд▓реЗрддрд╛ рд╣реИред рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореИрдирд┐рдкреБрд▓реЗрд╢рди рд╡рд┐рдзрд┐ рдкрд░реНрд▓ рдХреА рдпрд╛рдж рджрд┐рд▓рд╛рддреА рд╣реИред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб рдПрдордЖрдИрдЯреА рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рднрд╛рд╖рд╛ рдХреА рдкреНрд░рдореБрдЦ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ:

  • рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди: рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдПрдХ рдкреНрд░рдореБрдЦ рд▓рдХреНрд╖реНрдп рд╕реА рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рд╕рдорд╛рди рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИред рдЬреВрд▓рд┐рдпрд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рдПрд▓рдПрд▓рд╡реАрдПрдо рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдХрд╛рдо рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ рдФрд░ рдХрдИ рд▓рдХреНрд╖реНрдп рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХреЗ рд▓рд┐рдП рдХреБрд╢рд▓ рджреЗрд╢реА рдорд╢реАрди рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ;
  • рдСрдмреНрдЬреЗрдХреНрдЯ-рдУрд░рд┐рдПрдВрдЯреЗрдб рдФрд░ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рддрддреНрд╡реЛрдВ рд╕рд╣рд┐рдд рд╡рд┐рднрд┐рдиреНрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкреНрд░рддрд┐рдорд╛рдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп, рдЕрдиреНрдп рдмрд╛рддреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ I/O, рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдирд┐рдпрдВрддреНрд░рдг, рд▓реЙрдЧрд┐рдВрдЧ, рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдФрд░ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ;
  • рдЧрддрд┐рд╢реАрд▓ рдЯрд╛рдЗрдкрд┐рдВрдЧ: рднрд╛рд╖рд╛ рдХреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рдорд╛рди, рдЪрд░ рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рд╕реНрдкрд╖реНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдореЛрдб рд╕рдорд░реНрдерд┐рдд;
  • рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рд╡реИрдХрд▓реНрдкрд┐рдХ рдХреНрд╖рдорддрд╛;
  • рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ, рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ, рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдФрд░ рдбреЗрдЯрд╛ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрджрд░реНрд╢ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ред рдЧрдгрдирд╛рдУрдВ рдХреЗ рд╕рдорд╛рдирд╛рдВрддрд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХрдИ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдФрд░ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред
  • рдЕрддрд┐рд░рд┐рдХреНрдд рдкрд░рддреЛрдВ рдХреЗ рдмрд┐рдирд╛ рд╕реА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рд╕реЗ рд╕реАрдзреЗ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред

рдЬреВрд▓рд┐рдпрд╛ 1.9 рдореЗрдВ рдкреНрд░рдореБрдЦ рдкрд░рд┐рд╡рд░реНрддрди:

  • рдирдИ рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдПрдБ
    • "setproperty!(::Module, ::Symbol, x)" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВред
    • рдЕрдВрддрд┐рдо рд╕реНрдерд┐рддрд┐ рдореЗрдВ рди рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдПрдХрд╛рдзрд┐рдХ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдЯреНрд░рд┐рдВрдЧ "рдП, рдмреА..., рд╕реА = 1, 2, 3, 4" рдХреЛ "рдП = 1;" рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдмреАтАж, = 2, 3; рд╕реА = 4"ред рдЗрд╕реЗ Base.split_rest рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
    • рдПрдХрд▓ рд╡рд░реНрдг рдЕрдХреНрд╖рд░ рдЕрдм рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЕрдХреНрд╖рд░ рдХреЗ рд╕рдорд╛рди рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ; рд╡реЗред рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрдорд╛рдиреНрдп UTF-8 рдЕрдиреБрдХреНрд░рдореЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЪрд╛рд░ рдкреНрд░рдХрд╛рд░ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрдордд рд╣реИред
    • рдпреВрдирд┐рдХреЛрдб 15 рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред
    • рдЯреБрдкрд▓реНрд╕ рдФрд░ рдирд╛рдорд┐рдд рдХреИрд░реЗрдХреНрдЯрд░ рдЯреБрдкрд▓реНрд╕ рдХреЗ рдиреЗрд╕реНрдЯреЗрдб рд╕рдВрдпреЛрдЬрдиреЛрдВ рдХреЛ рдЕрдм рдЯрд╛рдЗрдк рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
    • рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рдХреЛ рдкрдврд╝рдиреЗ рдФрд░ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдирдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдлрд╝рдВрдХреНрд╢рди "getglobal(::Module, ::Symbol[, order])" рдФрд░ "setglobal!(::Module, ::Symbol, x[, order])"ред рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░реЛрдВ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЧреЗрдЯрдлрд╝реАрд▓реНрдб рд╡рд┐рдзрд┐ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдм рдЧреЗрдЯрдЧреНрд▓реЛрдмрд▓ рд╡рд┐рдзрд┐ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред
  • рднрд╛рд╖рд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди
    • рд╕рдВрд╕реНрдХрд░рдг 1.7 рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд "@invoke" рдореИрдХреНрд░реЛ рдЕрдм рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдЕрдм рдпрд╣ рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ "Any" рдХреЗ рдмрдЬрд╛рдп "Core.Typeof(x)" рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ "x" рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдк рдПрдиреЛрдЯреЗрд╢рди рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдкреНрд░рдХрд╛рд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВред
    • "рдЗрдирд╡реЛрдХреЗрд▓реИрдЯреЗрд╕реНрдЯ" рдлрд╝рдВрдХреНрд╢рди рдФрд░ "@invokelatest" рдореИрдХреНрд░реЛ рдХрд╛ рд╕рдХреНрд╖рдо рдирд┐рд░реНрдпрд╛рдд, рд╕рдВрд╕реНрдХрд░рдг 1.7 рдореЗрдВ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
  • рдХрдВрдкрд╛рдЗрд▓рд░/рд░рдирдЯрд╛рдЗрдо рд╕реБрдзрд╛рд░
    • рдкрд╣рд▓реЗ рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рд╕рдордп рдХрд╛рдлреА рдХрдо рд╣реЛ рдЧрдпрд╛ (рдЯреАрдЯреАрдПрдлрдПрдХреНрд╕ - рдкрд╣рд▓реЗ рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рд╕рдордп)ред рдХрд┐рд╕реА рдкреИрдХреЗрдЬ рдХреЛ рдкреНрд░реАрдХрдВрдкрд╛рдЗрд▓ рдХрд░рдиреЗ рд╕реЗ рдЕрдм рдореВрд▓ рдХреЛрдб "pkgimage" рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдкреНрд░реАрдХрдВрдкрд╛рдЗрд▓реЗрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рдХреЛрдб рдХреЛ рдкреИрдХреЗрдЬ рд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдкреБрди: рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред pkgimages рдореЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ "--pkgimages=no" рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
    • рдкреНрд░рдХрд╛рд░ рдЕрдиреБрдорд╛рди рдХреА рдЬреНрдЮрд╛рдд рджреНрд╡рд┐рдШрд╛рдд рдЬрдЯрд┐рд▓рддрд╛ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЕрдиреБрдорд╛рди рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рдХрдо рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рд▓рдВрдмреЗ рдХрд╛рд░реНрдпреЛрдВ (рдЬреИрд╕реЗ рдХрд┐ рдЖрдВрд╢рд┐рдХ рдЕрдВрддрд░ рд╕рдореАрдХрд░рдгреЛрдВ рдФрд░ рдмрдбрд╝реЗ рдХрд╛рд░рдг рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рдореЙрдбрд▓рд┐рдВрдЧрдЯреВрд▓рдХрд┐рдЯ.рдЬреЗрдПрд▓) рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд┐рдирд╛рд░реЗ рдХреЗ рдорд╛рдорд▓реЗ рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред
    • рдареЛрд╕ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдмрд┐рдирд╛ рддрд░реНрдХреЛрдВ рд╡рд╛рд▓реА рдХреЙрд▓реЗрдВ рдЕрдм рдЗрдВрдЬреЗрдХреНрд╢рди рдпрд╛ рд╕реНрдереИрддрд┐рдХ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдХреЗ рд▓рд┐рдП рдпреВрдирд┐рдпрди-рд╕реНрдкреНрд▓рд┐рдЯрд┐рдВрдЧ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдкреНрд░реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╣реЛрдВред рдпрд╣ рдХреБрдЫ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдСрдмреНрдЬреЗрдХреНрдЯ рдкреНрд░рдХрд╛рд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрдерд┐рд░ рд░реВрдк рд╕реЗ рд╣рд▓ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, "@nospecialize-d" рдХреЙрд▓ рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рд╕реНрдерд┐рд░ рд░реВрдк рд╕реЗ рд╣рд▓ рдХрд░рдХреЗ рдФрд░ рдкреБрдирд░реНрд╕рдВрдХрд▓рди рд╕реЗ рдмрдЪрдХрд░ред
    • рдмреЗрд╕ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ @pure рдореИрдХреНрд░реЛ рдХреЗ рд╕рднреА рдЙрдкрдпреЛрдЧреЛрдВ рдХреЛ Base.@assume_effects рд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
    • рдЖрдо рддреМрд░ рдкрд░ f(args...) рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде invoke(f, invokesig, args...) рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рд╕реЗ рдЕрдм рдкреИрдХреЗрдЬ рдХреЛ рджреЛрдмрд╛рд░рд╛ рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди
    • рд▓рд┐рдирдХреНрд╕ рдФрд░ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░, "--рдереНрд░реЗрдбреНрд╕ = рдСрдЯреЛ" рд╡рд┐рдХрд▓реНрдк рдЕрдм рд╕реАрдкреАрдпреВ рдПрдлрд╝рд┐рдирд┐рдЯреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреА рдЙрдкрд▓рдмреНрдз рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЖрдорддреМрд░ рдкрд░ рдПрдЪрдкреАрд╕реА рдФрд░ рдХреНрд▓рд╛рдЙрдб рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрдХ рдорд╛рд╕реНрдХ рд╣реИред
    • "--math-mode=fast" рдкреИрд░рд╛рдореАрдЯрд░ рдЕрдХреНрд╖рдо рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрдЬрд╛рдп "@fastmath" рдореИрдХреНрд░реЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╢рдмреНрджрд╛рд░реНрде рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
    • "--рдереНрд░реЗрдбреНрд╕" рд╡рд┐рдХрд▓реНрдк рдЕрдм "рдСрдЯреЛ |" рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╣реИ рдПрди[,рдСрдЯреЛ|рдПрдо]", рдЬрд╣рд╛рдВ рдПрдо рдмрдирд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдереНрд░реЗрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ (рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдСрдЯреЛ рдХрд╛ рдорддрд▓рдм 1 рд╣реИ)ред
    • рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ "тАФрд╣реАрдк-рдЖрдХрд╛рд░-рд╕рдВрдХреЗрдд=" ", рдЬреЛ рд╡рд╣ рд╕реАрдорд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╕рдХреНрд░рд┐рдп рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдг рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рдЖрдХрд╛рд░ рдмрд╛рдЗрдЯреНрд╕, рдХрд┐рд▓реЛрдмрд╛рдЗрдЯреНрд╕ (1000 рдХреЗрдмреА), рдореЗрдЧрд╛рдмрд╛рдЗрдЯреНрд╕ (300 рдПрдордмреА), рдпрд╛ рдЧреАрдЧрд╛рдмрд╛рдЗрдЯреНрд╕ (1,5 рдЬреАрдмреА) рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди
    • "Threads.@spawn" рдореЗрдВ рдЕрдм ":default" рдпрд╛ ":interactive" рдорд╛рди рдХреЗ рд╕рд╛рде рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдкрд╣рд▓рд╛ рддрд░реНрдХ рд╣реИред рдПрдХ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рдХрдо рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡рд┐рд▓рдВрдмрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдЗрд╕реЗ рдХрдо рд╕рдордп рдпрд╛ рдмрд╛рд░-рдмрд╛рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрджрд┐ рдЬреВрд▓рд┐рдпрд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдХрд╛рд░реНрдп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ рддреЛ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдереНрд░реЗрдб рдкрд░ рдЪрд▓реЗрдВрдЧреЗред
    • рдЬреВрд▓рд┐рдпрд╛ рд░рдирдЯрд╛рдЗрдо рдХреЗ рдмрд╛рд╣рд░ рдЪрд▓ рд░рд╣реЗ рдереНрд░реЗрдб (рдЬреИрд╕реЗ рд╕реА рдпрд╛ рдЬрд╛рд╡рд╛ рд╕реЗ) рдЕрдм "jl_adopt_thread" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬреВрд▓рд┐рдпрд╛ рдХреЛрдб рдХреЛ рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЬреВрд▓рд┐рдпрд╛ рдХреЛрдб рдХреЛ "cfunction" рдпрд╛ "@ccallable" рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдмрд┐рдВрджреБ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рджрд░реНрдЬ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣реЛрддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рдереНрд░реЗрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЕрдм рдмрджрд▓ рд╕рдХрддреА рд╣реИред
  • рдирдП рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛рд░реНрдп
    • рдирдпрд╛ рдлрд╝рдВрдХреНрд╢рди "рдЗрдЯрд░реЗрдЯрд░реНрд╕.рдлреНрд▓реИрдЯрдореИрдк"ред
    • рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдореЙрдбреНрдпреВрд▓ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреИрдХреЗрдЬ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдпрд╛ рдлрд╝рдВрдХреНрд╢рди "pkgversion(m::Module)", "pkgdir(m::Module)" рдХреЗ рд╕рдорд╛рдиред
    • рдирдпрд╛ рдлрд╝рдВрдХреНрд╢рди "рд╕реНрдЯреИрдХ(x)" рдЬреЛ "reduce(hcat, x::Vector{<:Vector})" рдХреЛ рдХрд┐рд╕реА рднреА рдЖрдпрд╛рдо рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЗ рдХрд┐рд╕реА рднреА рдкреБрдирд░рд╛рд╡рд░реНрддрдХ рдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред "рд╕реНрдЯреИрдХ(f, x)" рд╡рд┐рдзрд┐ "mapreduce(f, hcat, x)" рдХреЛ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рдХрд░рддреА рд╣реИ рдФрд░ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рд╣реИред
    • рдЖрд╡рдВрдЯрд┐рдд рдореЗрдореЛрд░реА "@allocations" рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдпрд╛ рдореИрдХреНрд░реЛ, "@allocated" рдХреЗ рд╕рдорд╛рди, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдпрд╣ рдЖрд╡рдВрдЯрд┐рдд рдореЗрдореЛрд░реА рдХреЗ рдХреБрд▓ рдЖрдХрд╛рд░ рдХреЗ рдмрдЬрд╛рдп рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрди рдХреА рд╕рдВрдЦреНрдпрд╛ рд▓реМрдЯрд╛рддрд╛ рд╣реИред
  • рдирдИ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реБрд╡рд┐рдзрд╛рдПрдБ
    • "рд░рд╛рдЙрдВрдбрдлреНрд░реЙрдордЬрд╝реАрд░реЛ" рдЕрдм "рдмрд┐рдЧрдлреНрд▓реЛрдЯ" рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
    • "рдбрд┐рдХреНрдЯ" рдХреЛ рдЕрдм "рд╕рд╛рдЗрдЬрд╝рд╣рд┐рдВрдЯ!" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЫреЛрдЯрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ!
    • "@time" рдЕрдм рдЕрдорд╛рдиреНрдп рддрд░реАрдХреЛрдВ рдХреЛ рдкреБрди: рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд▓рдЧрдиреЗ рд╡рд╛рд▓реЗ рд╕рдордп рдХрд╛ рдкреНрд░рддрд┐рд╢рдд рдЕрд▓рдЧ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред
  • рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди
    • рдбрд┐рдХреНрдЯ рдФрд░ рдЕрдиреНрдп рд╡реНрдпреБрддреНрдкрдиреНрди рд╡рд╕реНрддреБрдУрдВ рдЬреИрд╕реЗ рдХреБрдВрдЬреА (:: рдбрд┐рдХреНрдЯ), рдорд╛рди (:: рдбрд┐рдХреНрдЯ) рдФрд░ рд╕реЗрдЯ рдХреЗ рд▓рд┐рдП рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рдПрдХ рд╕рдорд╡рд░реНрддреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдЗрди рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдЕрдм рдЕрд╕реАрдорд┐рдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдереНрд░реЗрдбреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдбрд┐рдХреНрдЯ рдпрд╛ рд╕реЗрдЯ рдкрд░ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрдм рддрдХ рдХрд┐ рдХреЛрдИ рдРрд╕реА рдХреНрд░рд┐рдпрд╛ рди рд╣реЛ рдЬреЛ рд╢рдмреНрджрдХреЛрд╢ рдпрд╛ рд╕реЗрдЯ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддреА рд╣реЛред
    • рдПрдХ рд╡рд┐рдзреЗрдп рдлрд╝рдВрдХреНрд╢рди "!f" рдХреЛ рдирдХрд╛рд░рдиреЗ рд╕реЗ рдЕрдм рдПрдХ рдЕрдирд╛рдо рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмрдЬрд╛рдп рдПрдХ рд╕рдордЧреНрд░ рдлрд╝рдВрдХреНрд╢рди "(!) тИШ f" рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддрд╛ рд╣реИред
    • рдЖрдпрд╛рдо рд╕реНрд▓рд╛рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдЕрдм рдХрдИ рдЖрдпрд╛рдореЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ: "рдкреНрд░рддреНрдпреЗрдХрд╕реНрд▓рд╛рдЗрд╕", "рдкреНрд░рддреНрдпреЗрдХрд░реЛ" рдФрд░ "рдкреНрд░рддреНрдпреЗрдХрдХреЙрд▓" рдПрдХ "рд╕реНрд▓рд╛рдЗрд╕" рдСрдмреНрдЬреЗрдХреНрдЯ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВ рдЬреЛ рдкреНрд░реЗрд╖рдг рдХреЛ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рддрд░реАрдХреЗ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
    • рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдПрдкреАрдЖрдИ рдореЗрдВ "@kwdef" рдореИрдХреНрд░реЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред
    • "fld1" рдореЗрдВ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдХреНрд░рдо рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ред
    • рд╕реЙрд░реНрдЯрд┐рдВрдЧ рдЕрдм рд╣рдореЗрд╢рд╛ рд╕рдордп-рд╕реНрдерд┐рд░ рд╣реИ (рдХреНрд╡рд┐рдХрд╕реЙрд░реНрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред
    • "рдмреЗрд╕.рд╕реНрдкреНрд▓реИрдЯ" рдЕрдм рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд░рд┐рдЯрд░реНрди рд╡реИрд▓реНрдпреВ рдПрдХ рдЕрдЬреНрдЮрд╛рдд рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмрдЬрд╛рдп "рдмреЗрд╕.рд╕реНрдкреНрд▓реИрдЯ" рдкреНрд░рдХрд╛рд░ рд╣реИ, рдЬреЛ рдЗрд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
  • рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ
    • "рдкреИрдХреЗрдЬ рдПрдХреНрд╕рдЯреЗрдВрд╢рди": рдЬреВрд▓рд┐рдпрд╛ рд╕рддреНрд░ рдореЗрдВ рд▓реЛрдб рдХрд┐рдП рдЧрдП рдЕрдиреНрдп рдкреИрдХреЗрдЬреЛрдВ рд╕реЗ рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред рдПрдкреНрд▓рд┐рдХреЗрд╢рди "Requires.jl" рдкреИрдХреЗрдЬ рдХреЗ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдкреВрд░реНрд╡-рд╕рдВрдХрд▓рди рдФрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕рдВрдЧрддрддрд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИред
  • рд░реИрдЦрд┐рдХ рдмреАрдЬрдЧрдгрд┐рдд рдкреБрд╕реНрддрдХрд╛рд▓рдп
    • рддрддреНрд╡-рд╡рд╛рд░ рд╡рд┐рднрд╛рдЬрди рдХреЗ рд╕рд╛рде рднреНрд░рдо рдХреЗ рдЬреЛрдЦрд┐рдо рдХреЗ рдХрд╛рд░рдг, рдЕрджрд┐рд╢ "рдП" рдФрд░ рд╡реЗрдХреНрдЯрд░ "рдмреА" рдХреЗ рд╕рд╛рде "рдП/рдмреА" рдФрд░ "рдмреА\рдП" рддрд░реАрдХреЛрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛, рдЬреЛ "рдП * рдкрд┐рдирд╡реА(рдмреА)" рдХреЗ рдмрд░рд╛рдмрд░ рдереЗред
    • BLAS рдФрд░ LAPACK рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдм "libblastrampoline (LBT)" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред OpenBLAS рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреНрдп BLAS/LAPACK рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рд╛рде рд╕рд┐рд╕реНрдЯрдо рдЫрд╡рд┐ рдмрдирд╛рдирд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдореМрдЬреВрджрд╛ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде BLAS/LAPACK рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП LBT рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХреА рдЬрд╛рддреА рд╣реИред
    • "lu" рдПрдХ рдирдИ рдореИрдЯреНрд░рд┐рдХреНрд╕ рд░реЛрдЯреЗрд╢рди рд░рдгрдиреАрддрд┐, "RowNonZero()" рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдирдП рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдФрд░ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рдЧреИрд░-рд╢реВрдиреНрдп рд░реЛрдЯреЗрд╢рди рддрддреНрд╡ рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИред
    • "рдиреЙрд░реНрдорд▓рд╛рдЗрдЬрд╝(x, p=2)" рдЕрдм рд╕реНрдХреЗрд▓рд░ рд╕рд╣рд┐рдд рдХрд┐рд╕реА рднреА рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рд╡реЗрдХреНрдЯрд░ рд╕реНрдкреЗрд╕ "x" рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред
    • рдмреАрдПрд▓рдПрдПрд╕ рдереНрд░реЗрдбреНрд╕ рдХреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдВрдЦреНрдпрд╛ рдЕрдм рдПрдЖрд░рдПрдо рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рд╕реАрдкреАрдпреВ рдереНрд░реЗрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ рдФрд░ рдЕрдиреНрдп рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдкрд░ рд╕реАрдкреАрдпреВ рдереНрд░реЗрдбреНрд╕ рдХреА рдЖрдзреА рд╕рдВрдЦреНрдпрд╛ рд╣реИред
  • рдкреНрд░рд┐рдВрдЯрдл: рдмреЗрд╣рддрд░ рдкрдардиреАрдпрддрд╛ рдХреЗ рд▓рд┐рдП рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рд╕реНрд╡рд░реВрдкрд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдкрд░ рджреЛрдмрд╛рд░рд╛ рдХрд╛рдо рдХрд┐рдпрд╛ рдЧрдпрд╛ред
  • рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓: рдирдпрд╛ рдлрд╝рдВрдХреНрд╢рди "Profile.take_heap_snapshot(file)", рдЬреЛ Chrome рдореЗрдВ рд╕рдорд░реНрдерд┐рдд JSON-рдЖрдзрд╛рд░рд┐рдд ".heapsnapshot" рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдПрдХ рдлрд╝рд╛рдЗрд▓ рд▓рд┐рдЦрддрд╛ рд╣реИред
  • рд░реИрдВрдбрдо: рд░реИрдВрдбрди рдФрд░ рд░реИрдВрдбрдПрдХреНрд╕рдкреА рдЕрдм рдХрд┐рд╕реА рднреА рдПрдмреНрд╕рдЯреНрд░реИрдХреНрдЯрдлреНрд▓реЛрдЯ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд░реИрдВрдб рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
  • рдЖрд░рдИрдкреАрдПрд▓
    • рдЕрдм "Alt-e" рдХреБрдВрдЬреА рд╕рдВрдпреЛрдЬрди рджрдмрд╛рдиреЗ рд╕реЗ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдЗрдирдкреБрдЯ рдЦреБрд▓ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рдЖрдк рд╕рдВрдкрд╛рджрдХ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВрдЧреЗ рддреЛ рд╕рд╛рдордЧреНрд░реА (рдпрджрд┐ рд╕рдВрд╢реЛрдзрд┐рдд рд╣реЛ) рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛ рдЬрд╛рдПрдЧреАред
    • REPL рдореЗрдВ рд╕рдХреНрд░рд┐рдп рд╡рд░реНрддрдорд╛рди рдореЙрдбреНрдпреВрд▓ рд╕рдВрджрд░реНрдн рдХреЛ "REPL.activate(::Module)" рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдпрд╛ REPL рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рджрд░реНрдЬ рдХрд░рдХреЗ рдФрд░ рдХреБрдВрдЬреА рд╕рдВрдпреЛрдЬрди "Alt-m" рджрдмрд╛рдХрд░ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдореБрдЦреНрдп)ред
    • "рдирдВрдмрд░рдпреБрдХреНрдд рдкреНрд░реЙрдореНрдкреНрдЯ" рдореЛрдб, рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдЗрдирдкреБрдЯ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕реНрдХреЛрд░ рдХрд┐рдП рдЧрдП рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдЖрдЙрдЯ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рдХреЛ "REPL.numbered_prompt!()" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
    • рдЯреИрдм рдкреВрд░реНрдгрддрд╛ рдЙрдкрд▓рдмреНрдз рдХреАрд╡рд░реНрдб рддрд░реНрдХ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреА рд╣реИред
  • SuiteSparse: "SuiteSparse" рд╕реЙрд▓реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЛ "SparseArrays.jl" рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛ред рд╕реЙрд▓реНрд╡рд░ рдЕрдм "SuiteSparse.jl" рджреНрд╡рд╛рд░рд╛ рдкреБрдирдГ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
  • рд╕реНрдкрд╛рд░реНрд╕рдПрд░реЗрдЬрд╝
    • "рд╕реБрдЗрдЯрд╕реНрдкрд╛рд░реНрд╕" рд╕реЙрд▓реНрд╡рд░ рдЕрдм "рд╕реНрдкрд╛рд░реНрд╕рдПрд░реЗрдЬрд╝" рд╕рдмрдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред
    • рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рдХреЛ рд╣рдЯрд╛рдХрд░ рдФрд░ рддрд╛рд▓реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ UMFPACK рдФрд░ CHOLMOD рдереНрд░реЗрдб рд╕реБрд░рдХреНрд╖рд╛ рдореЛрдб рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб "ldiv!" UMFPACK рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдЕрдм рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
    • рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдлрд╝рдВрдХреНрд╢рди "SparseArrays.allowscalear(::Bool)" рдЖрдкрдХреЛ рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд╕реНрдХреЗрд▓рд░ рдЕрдиреБрдХреНрд░рдордг рдХреЛ рдЕрдХреНрд╖рдо рдпрд╛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдлрд╝рдВрдХреНрд╢рди "SparseMatrixCSC" рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕реНрдХреЗрд▓рд░ рдЕрдиреБрдХреНрд░рдордг рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрд░реЛрдд рд╣реИред
  • рдкрд░реАрдХреНрд╖рдг рд╕реБрдЗрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдирдпрд╛ рдлреЗрд▓рд╕реЗрдл рдореЛрдб рдЬреЛ рд╡рд┐рдлрд▓рддрд╛ рдпрд╛ рддреНрд░реБрдЯрд┐ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХреЛ рдЬрд▓реНрджреА рд╕рдорд╛рдкреНрдд рдХрд░ рджреЗрддрд╛ рд╣реИред рдпрд╛ рддреЛ "@testset kwarg failfast=true" рдпрд╛ "export JULIA_TEST_FAILFAST=true" рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реЗрдЯ рдХрд░реЗрдВред рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рд╢реАрдШреНрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдЖрдИ рд░рди рдореЗрдВ рдпрд╣ рдХрднреА-рдХрднреА рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддрд╛ рд╣реИред
  • рджрд┐рдирд╛рдВрдХ: рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдЕрдм рд╡реИрдз "рджрд┐рдирд╛рдВрдХ рд╕рдордп", "рджрд┐рдирд╛рдВрдХ" рдпрд╛ "рд╕рдордп" рдорд╛рдиреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдкрд╛рд░реНрд╕ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдФрд░ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдореЗрдВ "ArgumentError" рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ "рдЯреНрд░рд┐рдкрд░реНрд╕" рдХреБрдЫ рднреА рдирд╣реАрдВ рд▓реМрдЯрд╛рддрд╛ рд╣реИред
  • рдкреИрдХреЗрдЬ рд╡рд┐рддрд░рд┐рдд
    • рдкреИрдХреЗрдЬ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди (рд╕рдХреНрд░рд┐рдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ, "LOAD_PATH", "DEPOT_PATH") рдЕрдм рд╕реНрдерд╛рдиреАрдп рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╕рдордп рдкреНрд░рдЪрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "addprocs(N::Int)" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдпрд╛ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдзреНрд╡рдЬ "--procs=N" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛)ред
    • рд╕реНрдерд╛рдиреАрдп рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП "рдПрдбрдкреНрд░реЛрдХреНрд╕" рдЕрдм рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "env" рдирд╛рдордХ рдПрдХ рддрд░реНрдХ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред
  • рдпреВрдирд┐рдХреЛрдб: "рдЧреНрд░реИрдлреЗрдореНрд╕(s, m:n)" "s" рдореЗрдВ mth рд╕реЗ nрд╡реЗрдВ рдЧреНрд░реИрдлреЗрдореНрд╕ рддрдХ рд╕рдмрд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓реМрдЯрд╛рддрд╛ рд╣реИред
  • DelimitedFiles рдкреИрдХреЗрдЬ рдХреЛ рд╕рд┐рд╕реНрдЯрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЕрдм рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рдкреИрдХреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рдмрд╛рд╣рд░реА рдирд┐рд░реНрднрд░рддрд╛
    • рд▓рд┐рдирдХреНрд╕ рдореЗрдВ, libstdc++ рд╕рд┐рд╕реНрдЯрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░, рдпрджрд┐ рдпрд╣ рдирдпрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреБрд░рд╛рдиреЗ libstdc++ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд▓реЛрдбрд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░, рд╕рд┐рд╕реНрдЯрдо рд╕рдВрд╕реНрдХрд░рдг рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛, рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ "JULIA_PROBE_LIBSTDCXX=0" рд╕реЗрдЯ рдХрд░рдХреЗ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
    • рдЬреВрд▓рд┐рдпрд╛ рдмрд╛рдЗрдирд░реА рд╕реЗ "рдЖрд░рдкреАрдПрдЯреАрдПрдЪ" рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛, рдЬреЛ рд▓рд┐рдирдХреНрд╕ рдкрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рддреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ "рд░рдирдкрде" рдЪрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддреЗ рд╣реИрдВред
    • рдЙрдкрдХрд░рдг рдореЗрдВ рд╕реБрдзрд╛рд░: "MethodError" рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "methods(my_func)") рдХреЛ рдЕрдм рд╕реНрдЯреИрдХ рдЯреНрд░реЗрд╕ рдореЗрдВ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕реНрд╡рд░реВрдкрд┐рдд рдФрд░ рд░рдВрдЧреАрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

    рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ