ΠŸΡƒΡΠΊΠ°Π½Π΅ Π½Π° Π΅Π·ΠΈΠΊΠ° Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Julia 1.8

ΠŸΡ€Π΅Π΄Π»Π°Π³Π° сС вСрсията Π½Π° Π΅Π·ΠΈΠΊΠ° Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Julia 1.8, ΡΡŠΡ‡Π΅Ρ‚Π°Π²Π°Ρ‰ качСства ΠΊΠ°Ρ‚ΠΎ висока производитСлност, ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ въвСТданС ΠΈ Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ инструмСнти Π·Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅. Π‘ΠΈΠ½Ρ‚Π°ΠΊΡΠΈΡΡŠΡ‚ Π½Π° Julia Π΅ близък Π΄ΠΎ MATLAB, заимствайки някои Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ ΠΎΡ‚ Ruby ΠΈ Lisp. ΠœΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ Π·Π° ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° Π½ΠΈΠ·ΠΎΠ²Π΅ напомня Π½Π° Perl. ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° сС разпространява ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·Π° Π½Π° MIT.

Основни характСристики Π½Π° Π΅Π·ΠΈΠΊΠ°:

  • Висока производитСлност: Π΅Π΄Π½Π° ΠΎΡ‚ ΠΊΠ»ΡŽΡ‡ΠΎΠ²ΠΈΡ‚Π΅ Ρ†Π΅Π»ΠΈ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π΅ Π΄Π° сС постигнС производитСлност, Π±Π»ΠΈΠ·ΠΊΠ° Π΄ΠΎ C ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ‚Π΅. ΠšΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ΡŠΡ‚ Julia Π΅ Π±Π°Π·ΠΈΡ€Π°Π½ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° LLVM ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π΅Π½ собствСн машинСн ΠΊΠΎΠ΄ Π·Π° ΠΌΠ½ΠΎΠ³ΠΎ Ρ†Π΅Π»Π΅Π²ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ;
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ½ΠΈ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠΈ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ΠΎ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° прСдоставя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° асинхронСн I/O, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° процСси, рСгистриранС, ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€Π°Π½Π΅ ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ, Π½Π°Ρ€Π΅Π΄ с Π΄Ρ€ΡƒΠ³ΠΈ Π½Π΅Ρ‰Π°;
  • Π”ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€Π°Π½Π΅: Π•Π·ΠΈΠΊΡŠΡ‚ Π½Π΅ изисква ΠΈΠ·Ρ€ΠΈΡ‡Π½ΠΎ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅ Π·Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, ΠΏΠΎ аналогия с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ½ΠΈΡ‚Π΅ Π΅Π·ΠΈΡ†ΠΈ Π·Π° скриптовС. ΠŸΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ;
  • ΠΠ΅Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·Ρ€ΠΈΡ‡Π½ΠΎ ΡƒΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅;
  • Бинтаксис, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π΅Π½ Π·Π° числСни изчислСния, Π½Π°ΡƒΡ‡Π½ΠΈ изчислСния, систСми Π·Π° машинно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈ визуализация Π½Π° Π΄Π°Π½Π½ΠΈ. ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΌΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ ΠΈ инструмСнти Π·Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° изчислСния.
  • Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΡ‚ C Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π±Π΅Π· Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ слоСвС.

Основни ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² Julia 1.8:

  • Нови Π΅Π·ΠΈΠΊΠΎΠ²ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
    • ΠŸΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° структура Π²Π΅Ρ‡Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π°Π½ΠΎΡ‚ΠΈΡ€Π°Π½ΠΈ ΠΊΠ°Ρ‚ΠΎ константи, Π·Π° Π΄Π° сС ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈ промяната ΠΈΠΌ ΠΈ Π΄Π° сС ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ оптимизация.
    • АнотациитС Π½Π° Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС добавят към Π³Π»ΠΎΠ±Π°Π»Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ.
    • ΠŸΡ€Π°Π·Π½ΠΈ n-ΠΈΠ·ΠΌΠ΅Ρ€Π½ΠΈ масиви ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ създадСни с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° мноТСство Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈ запСтая Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΈ скоби, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ "[;;;]" създава масив 0x0x0.
    • Π‘Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ Try Π²Π΅Ρ‡Π΅ ΠΌΠΎΠ³Π°Ρ‚ ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ Π΄Π° ΠΈΠΌΠ°Ρ‚ Π±Π»ΠΎΠΊ else, ΠΊΠΎΠΉΡ‚ΠΎ сС изпълнява Π²Π΅Π΄Π½Π°Π³Π° слСд основното тяло, Π°ΠΊΠΎ Π½Π΅ са ΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ.
    • @inline ΠΈ @noinline ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ поставСни Π² тялото Π½Π° функция, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π΄Π° Π°Π½ΠΎΡ‚ΠΈΡ€Π°Ρ‚Π΅ Π°Π½ΠΎΠ½ΠΈΠΌΠ½Π° функция.
    • @inline ΠΈ @noinline Π²Π΅Ρ‡Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈ към функция Π² сайт Π·Π° ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½Π΅ ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊ, Π·Π° Π΄Π° принудят ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΈΡ‚Π΅ извиквания Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ (ΠΈΠ»ΠΈ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ).
    • βˆ€, βˆƒ ΠΈ βˆ„ са Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈ ΠΊΠ°Ρ‚ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ.
    • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° спСцификацията Unicode 14.0.0.
    • ΠœΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ Module(:name, false, false) ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° създаванС Π½Π° ΠΌΠΎΠ΄ΡƒΠ», ΠΊΠΎΠΉΡ‚ΠΎ Π½Π΅ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° ΠΈΠΌΠ΅Π½Π°, Π½Π΅ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€Π° Base ΠΈΠ»ΠΈ Core ΠΈ Π½Π΅ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° ΠΏΡ€Π΅ΠΏΡ€Π°Ρ‚ΠΊΠ° към сСбС си.
  • Π•Π·ΠΈΠΊΠΎΠ²ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ
    • ΠΠΎΠ²ΠΎΡΡŠΠ·Π΄Π°Π΄Π΅Π½ΠΈΡ‚Π΅ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ Π½Π° Task (@spawn, @async ΠΈ Ρ‚.Π½.) Π²Π΅Ρ‡Π΅ ΠΈΠΌΠ°Ρ‚ world_age Π·Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ ΠΎΡ‚ родитСлската Π·Π°Π΄Π°Ρ‡Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ са създадСни, ΠΊΠΎΠ΅Ρ‚ΠΎ позволява ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ΠΎ изпълнСниС. ΠŸΡ€Π΅Π΄ΠΈΡˆΠ½Π°Ρ‚Π° опция Π·Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏΠ½Π° Ρ‡Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Base.invokelatest.
    • Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΈΡ‚Π΅ Π·Π° нСбалансирано двупосочно Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€Π°Π½Π΅ Π½Π° Unicode Π²Π΅Ρ‡Π΅ са Π·Π°Π±Ρ€Π°Π½Π΅Π½ΠΈ Π² Π½ΠΈΠ·ΠΎΠ²Π΅ ΠΈ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈ, Π·Π° Π΄Π° сС ΠΈΠ·Π±Π΅Π³Π½Π°Ρ‚ ΠΈΠ½ΠΆΠ΅ΠΊΡ†ΠΈΠΈ.
    • Base.ifelse Π²Π΅Ρ‡Π΅ сС Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π° ΠΊΠ°Ρ‚ΠΎ ΠΎΠ±Ρ‰Π° функция, Π° Π½Π΅ ΠΊΠ°Ρ‚ΠΎ Π²Π³Ρ€Π°Π΄Π΅Π½Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ позволява Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ Π΄Π° Ρ€Π°Π·ΡˆΠΈΡ€ΡΡ‚ Π½Π΅ΠΉΠ½Π°Ρ‚Π° дСфиниция.
    • Всяко присвояванС Π½Π° Π³Π»ΠΎΠ±Π°Π»Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° сСга ΠΏΡŠΡ€Π²ΠΎ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π° ΠΏΡ€Π΅Π· ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° convert(Any, x) ΠΈΠ»ΠΈ convert(T, x), Π°ΠΊΠΎ Π³Π»ΠΎΠ±Π°Π»Π½Π°Ρ‚Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° Π΅ Π΄Π΅ΠΊΠ»Π°Ρ€ΠΈΡ€Π°Π½Π° ΠΊΠ°Ρ‚ΠΎ ΠΎΡ‚ Ρ‚ΠΈΠΏ T. ΠŸΡ€Π΅Π΄ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, ΡƒΠ²Π΅Ρ€Π΅Ρ‚Π΅ сС, Ρ‡Π΅ ΠΈΠ½Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΡŠΡ‚ convert(Any , x) === x Π²ΠΈΠ½Π°Π³ΠΈ Π΅ вярно, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π΅Π½ случай ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π½Π΅ΠΎΡ‡Π°ΠΊΠ²Π°Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.
    • Π’Π³Ρ€Π°Π΄Π΅Π½ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Π΅Ρ‡Π΅ са ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π½Π° ΠΎΠ±Ρ‰ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ½ΠΎ ΠΈΠ·Π±Ρ€ΠΎΠ΅Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ.
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΈΡ Π² ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π°/Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС
    • Π’Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° стартиранС Π΅ Π½Π°ΠΌΠ°Π»Π΅Π½ΠΎ с ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ 25%.
    • Базираният Π½Π° LLVM ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ Π΅ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Π·Π° изпълнСниС Π² Π½ΠΎΠ²Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, libjulia-codegen. Π’ΠΎΠΉ сС Π·Π°Ρ€Π΅ΠΆΠ΄Π° ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π½Π΅ трябва Π΄Π° ΠΈΠΌΠ° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΈ Π½ΠΎΡ€ΠΌΠ°Π»Π½Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π°. ΠŸΡ€ΠΈ внСдрявания, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ сС нуТдаят ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ систСмни изобраТСния, Π² ΠΊΠΎΠΈΡ‚ΠΎ цСлият Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠ΄ Π΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½), Ρ‚Π°Π·ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° (ΠΈ Π½Π΅ΠΉΠ½Π°Ρ‚Π° LLVM зависимост) ΠΌΠΎΠΆΠ΅ просто Π΄Π° бъдС пропусната.
    • Π˜Π·Π²ΠΎΠ΄ΡŠΡ‚ Π·Π° условСн Ρ‚ΠΈΠΏ Π²Π΅Ρ‡Π΅ Π΅ възмоТСн Ρ‡Ρ€Π΅Π· ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ към ΠΌΠ΅Ρ‚ΠΎΠ΄. НапримСр Π·Π° Base.ifelse(isa(x, Int), x, 0) Π²Ρ€ΡŠΡ‰Π° ::Int Π΄ΠΎΡ€ΠΈ Π°ΠΊΠΎ Ρ‚ΠΈΠΏΡŠΡ‚ Π½Π° x Π΅ нСизвСстСн.
    • SROA (скаларно замСстванС Π½Π° Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΈ) Π΅ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ: Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π° getfield извиквания с постоянни Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ ΠΏΠΎΠ»Π΅Ρ‚Π°, Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡ€Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ структури с Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΏΠΎΠ»Π΅Ρ‚Π°, подобрява производитСлността ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° Π²Π»ΠΎΠΆΠ΅Π½ΠΈ getfield извиквания.
    • Π˜Π·Π²ΠΎΠ΄ΡŠΡ‚ Π·Π° Ρ‚ΠΈΠΏ прослСдява Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π΅Ρ„Π΅ΠΊΡ‚ΠΈ - странични Π΅Ρ„Π΅ΠΊΡ‚ΠΈ ΠΈ Π½Π΅ΠΎΡ‚ΠΏΠ°Π΄Π°Π½Π΅. Π’Π·Π΅Ρ‚ΠΎ Π΅ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ постоянното разпространСниС, ΠΊΠΎΠ΅Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ подобрява производитСлността ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° компилация. Π’ някои случаи, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, извикванията Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ, Π½ΠΎ Π½Π΅ влияят Π½Π° Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π°, Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΎΡ‚Ρ…Π²ΡŠΡ€Π»Π΅Π½ΠΈ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° изпълнСниС. ΠŸΡ€Π°Π²ΠΈΠ»Π°Ρ‚Π° Π·Π° Π΅Ρ„Π΅ΠΊΡ‚ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ прСзаписани Ρ€ΡŠΡ‡Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° макроса Base.@assume_effects.
    • ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½Π°Ρ‚Π° компилация (с ΠΈΠ·Ρ€ΠΈΡ‡Π½ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΈ Π·Π° прСдкомпилация ΠΈΠ»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ натоварвания) сСга Π·Π°ΠΏΠ°Π·Π²Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΊΠΎΠ΄, Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ ΠΎΡ‚ Ρ‚ΠΈΠΏΠ°, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΎ изпълнСниС ΠΏΡ€ΠΈ ΠΏΡŠΡ€Π²ΠΈ ΠΏΡŠΡ‚. Всички Π½ΠΎΠ²ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄/Ρ‚ΠΈΠΏ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ Π½Π° вашия ΠΏΠ°ΠΊΠ΅Ρ‚, нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ²Π° къдС са Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ Ρ‚Π΅Π·ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ, Π²Π΅Ρ‡Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΊΠ΅ΡˆΠΈΡ€Π°Π½ΠΈ във Ρ„Π°ΠΉΠ»Π° Π·Π° прСдкомпилация, Π°ΠΊΠΎ са ΠΈΠ·Π²ΠΈΠΊΠ°Π½ΠΈ ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ Π½Π° вашия ΠΏΠ°ΠΊΠ΅Ρ‚.
  • ΠŸΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π½Π° командния Ρ€Π΅Π΄
    • ΠŸΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π·Π° наблюдСниС Π½Π° @inbounds Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ†ΠΈΠΈ Π²Π΅Ρ‡Π΅ Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½Π°Ρ‚Π° опция Π² β€ž--check-bounds=yes|no|autoβ€œ.
    • Нова опция β€ž--strip-metadataβ€œ Π·Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅ Π½Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π½ΠΈ Π½ΠΈΠ·ΠΎΠ²Π΅, информация Π·Π° мСстополоТСниСто Π½Π° ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊΠ° ΠΈ ΠΈΠΌΠ΅Π½Π° Π½Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ ΠΏΡ€ΠΈ създаванС Π½Π° систСмно ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.
    • Нова опция "--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 ΠΈ lazy"str" ​​​​макрос са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ, Π·Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΌΡŠΡ€Π·Π΅Π»ΠΈΠ²Π° конструкция Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ Π·Π° Π³Ρ€Π΅ΡˆΠΊΠ° Π² ΠΏΡŠΡ‚Π΅ΠΊΠΈ Π·Π° Π³Ρ€Π΅ΡˆΠΊΠΈ.
    • ΠšΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Π½ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с паралСлността Π² Dict ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ ΠΊΠ°Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅ (::Dict), стойности (::Dict) ΠΈ Set. Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π²Π΅Ρ‡Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·Π²ΠΈΠΊΠ²Π°Ρ‚ Π² Ρ€Π΅Ρ‡Π½ΠΈΠΊ ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡ€, стига Π΄Π° няма извиквания, ΠΊΠΎΠΈΡ‚ΠΎ промСнят Ρ€Π΅Ρ‡Π½ΠΈΠΊΠ° ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡ€Π°.
    • @time ΠΈ @timev Π²Π΅Ρ‡Π΅ ΠΈΠΌΠ°Ρ‚ Π½Π΅Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎ описаниС, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π΄Π° ΠΊΠΎΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Ρ‚Π΅ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊΠ° Π½Π° ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΈΡ‚Π΅ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ. @time "ΠžΡ†Π΅Π½ΡΠ²Π°Π½Π΅ Π½Π° foo" foo().
    • Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΏΡ€ΠΈΠ΅ΠΌΠ° ΠΈΠ»ΠΈ стоп, ΠΈΠ»ΠΈ дълТина ΠΊΠ°Ρ‚ΠΎ СдинствСн Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π½Π° ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π° Π΄ΡƒΠΌΠ°.
    • precision ΠΈ setprecision Π²Π΅Ρ‡Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ°Ρ‚ base ΠΊΠ°Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π° Π΄ΡƒΠΌΠ°
    • ΠžΠ±Π΅ΠΊΡ‚ΠΈΡ‚Π΅ Π½Π° TCP сокСт Π²Π΅Ρ‡Π΅ прСдоставят ΠΌΠ΅Ρ‚ΠΎΠ΄ Π·Π° затварянС Π½Π° запис ΠΈ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠ»ΡƒΠΎΡ‚Π²ΠΎΡ€Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ.
    • extrema Π²Π΅Ρ‡Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ° init Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚.
    • Iterators.countfrom Π²Π΅Ρ‡Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ° всСки Ρ‚ΠΈΠΏ, ΠΊΠΎΠΉΡ‚ΠΎ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π° + ΠΌΠ΅Ρ‚ΠΎΠ΄.
    • @time сСга разпрСдСля % ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, ΠΈΠ·Ρ€Π°Π·Ρ…ΠΎΠ΄Π²Π°Π½ΠΎ Π·Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ с ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅.
  • Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π°
    • ΠšΠ»ΡŽΡ‡ΠΎΠ²Π΅ със стойност Π’Π΅Ρ‡Π΅ Π½ΠΈΡ‰ΠΎ Π½Π΅ сС ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° ΠΎΡ‚ срСдата Π² addenv.
    • Iterators.reverse (ΠΈ слСдоватСлно послСдСн) ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° всСки Ρ€Π΅Π΄.
    • Ѐункцията Π·Π° дълТина Π·Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΈ ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ Π²Π΅Ρ‡Π΅ Π½Π΅ провСрява Π·Π° цСлочислСно ΠΏΡ€Π΅ΠΏΡŠΠ»Π²Π°Π½Π΅. Налична Π΅ Π½ΠΎΠ²Π° функция, checked_length, която ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° Π»ΠΎΠ³ΠΈΠΊΠ° Π·Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° прСноса Π½Π° Π±ΠΈΡ‚ΠΎΠ²Π΅. Ако Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ SaferIntegers.jl, Π·Π° Π΄Π° конструиратС Ρ‚ΠΈΠΏΠ° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½.
    • Π˜Ρ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΡŠΡ‚ Iterators.Reverse ΠΏΡ€ΠΈΠ»Π°Π³Π° всяко ΠΎΠ±Ρ€ΡŠΡ‰Π°Π½Π΅ Π½Π° индСкса, Π°ΠΊΠΎ Π΅ възмоТно.
  • ΠœΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ
    • Нови ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ βŒƒ ΠΈ βŒ… Π΄ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ Π² ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅ β€žpkg>β€œ, Π·Π° ΠΊΠΎΠΈΡ‚ΠΎ са Π½Π°Π»ΠΈΡ‡Π½ΠΈ Π½ΠΎΠ²ΠΈ вСрсии. βŒ… ΠΏΠΎΠΊΠ°Π·Π²Π°, Ρ‡Π΅ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ инсталирани Π½ΠΎΠ²ΠΈ вСрсии.
    • Нов Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ outdated::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. Π’ΠΎΠΉ ΠΏΡ€Π°Π²ΠΈ Ρ‚ΠΎΠ²Π° въз основа Π½Π° Ρ…Π΅Ρˆ Π½Π° deps ΠΈ compat записи Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΠΎΠ»Π΅Ρ‚Π° сС ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€Π°Ρ‚) Π² манифСста ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅Ρ‚ΠΎ ΠΌΡƒ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ всяка промяна Π² Project.toml deps ΠΈΠ»ΠΈ compat записи ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΎΡ‚ΠΊΡ€ΠΈΡ‚Π° Π±Π΅Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅.
    • Ако "pkg>add" Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ с Π΄Π°Π΄Π΅Π½ΠΎΡ‚ΠΎ ΠΈΠΌΠ΅, сСга Ρ‰Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ с ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΈΠΌΠ΅Π½Π°, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ.
    • ВСрсията Π½Π° julia, ΡΡŠΡ…Ρ€Π°Π½Π΅Π½Π° Π² манифСста, Π²Π΅Ρ‡Π΅ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π²Π° Π½ΠΎΠΌΠ΅Ρ€Π° Π½Π° компилация, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ master Π²Π΅Ρ‡Π΅ Ρ‰Π΅ бъдС написан ΠΊΠ°Ρ‚ΠΎ 1.9.0-DEV.
    • ΠŸΡ€Π΅ΠΊΡŠΡΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° тСста "pkg>" Π²Π΅Ρ‡Π΅ Ρ‰Π΅ сС ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π° ΠΏΠΎ-послСдоватСлно ΠΈ Ρ‰Π΅ сС Π²Ρ€ΡŠΡ‰Π° ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ към REPL.
  • InteractiveUtils
    • Нов @time_imports макрос Π·Π° ΠΎΡ‚Ρ‡ΠΈΡ‚Π°Π½Π΅ Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, ΠΈΠ·Ρ€Π°Π·Ρ…ΠΎΠ΄Π²Π°Π½ΠΎ Π·Π° ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ зависимости, ΠΏΠΎΠ΄Ρ‡Π΅Ρ€Ρ‚Π°Π²Π°ΠΉΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ ΠΎΡ‚ импортиранията.
  • Π›ΠΈΠ½Π΅ΠΉΠ½Π° Π°Π»Π³Π΅Π±Ρ€Π°
    • ΠŸΠΎΠ΄ΠΌΠΎΠ΄ΡƒΠ»ΡŠΡ‚ BLAS Π²Π΅Ρ‡Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π° BLAS spr! ΠΎΡ‚ Π½ΠΈΠ²ΠΎ 2.
    • Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° LinearAlgebra.jl Π²Π΅Ρ‡Π΅ Π΅ напълно нСзависима ΠΎΡ‚ SparseArrays.jl ΠΊΠ°ΠΊΡ‚ΠΎ ΠΎΡ‚ Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π° изходния ΠΊΠΎΠ΄, Ρ‚Π°ΠΊΠ° ΠΈ ΠΎΡ‚ Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π° тСстванС Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†ΠΈ. Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° Ρ€Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈΡ‚Π΅ масиви Π²Π΅Ρ‡Π΅ Π½Π΅ сС Π²Ρ€ΡŠΡ‰Π°Ρ‚ (ΠΈΠΌΠΏΠ»ΠΈΡ†ΠΈΡ‚Π½ΠΎ) ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ ΠΎΡ‚ LinearAlgebra, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈ към ΠΎΠ±Π΅ΠΊΡ‚ΠΈ Base ΠΈΠ»ΠΈ LinearAlgebra. По-спСциално, Ρ‚ΠΎΠ²Π° Π²ΠΎΠ΄ΠΈ Π΄ΠΎ слСднитС Π½Π°Ρ€ΡƒΡˆΠ°Π²Π°Ρ‰ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ:
      • ΠšΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈΡ‚Π΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ спСциални "Ρ€Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ" ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ (Π½Π°ΠΏΡ€. Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π½ΠΈ), Π²Π΅Ρ‡Π΅ Π²Ρ€ΡŠΡ‰Π°Ρ‚ ΠΏΠ»ΡŠΡ‚Π½ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ; Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° ΠΏΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° D1 ΠΈ D2 Π½Π° SVD ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, създадСни ΠΎΡ‚ извиквания Π½Π° getproperty, Π²Π΅Ρ‡Π΅ са ΠΏΠ»ΡŠΡ‚Π½ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ.
      • ΠœΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ similar(::SpecialSparseMatrix, ::Type, ::Dims) Π²Ρ€ΡŠΡ‰Π° ΠΏΠ»ΡŠΡ‚Π½Π° Π½ΡƒΠ»Π΅Π²Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°. Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΡ‚Π΅ Π½Π° Π΄Π²Ρƒ-, Ρ‚Ρ€ΠΈ- ΠΈ симСтрични Ρ‚Ρ€ΠΈΠ΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Π½ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ Π΅Π΄Π½Π° с Π΄Ρ€ΡƒΠ³Π° водят Π΄ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΠ»ΡŠΡ‚Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°. ОсвСн Ρ‚ΠΎΠ²Π°, конструиранСто Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ с Ρ‚Ρ€ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° ΠΎΡ‚ спСциални "Ρ€Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ" ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ ΠΎΡ‚ (нСстатични) ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ Π²Π΅Ρ‡Π΅ Π΅ Π½Π΅ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΠΎΡ€Π°Π΄ΠΈ "Π½ΡƒΠ»Π°(::Π’ΠΈΠΏ{ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π°{T}})".
  • Printf
    • %s ΠΈ %c сСга ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° textwidth Π·Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€Π°Π½Π΅ Π½Π° ΡˆΠΈΡ€ΠΈΠ½Π°Ρ‚Π°.
  • ΠŸΡ€ΠΎΡ„ΠΈΠ»
    • ΠŸΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° процСсора Π²Π΅Ρ‡Π΅ записва ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ нишки ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ. Profile.print() ΠΈΠΌΠ° Π½ΠΎΠ² Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ groupby, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ позволява Π΄Π° Π³Ρ€ΡƒΠΏΠΈΡ€Π°Ρ‚Π΅ нишки, Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈΠ»ΠΈ поднишки/Π·Π°Π΄Π°Ρ‡ΠΈ, Π·Π°Π΄Π°Ρ‡ΠΈ/нишки ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈ Π½Π° нишки ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ, Π·Π° Π΄Π° осигуритС Ρ„ΠΈΠ»Ρ‚Ρ€ΠΈΡ€Π°Π½Π΅. ОсвСн Ρ‚ΠΎΠ²Π° ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΡŠΡ‚ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π²Π΅Ρ‡Π΅ сС ΠΎΡ‚Ρ‡ΠΈΡ‚Π° ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚ΠΎ цяло, ΠΈΠ»ΠΈ Π·Π° нишка, Π² зависимост ΠΎΡ‚ Ρ‚ΠΎΠ²Π° Π΄Π°Π»ΠΈ Π½ΠΈΡˆΠΊΠ°Ρ‚Π° Π΅ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Π° ΠΈΠ»ΠΈ Π½Π΅ във всяка ΠΏΡ€ΠΎΠ±Π°. Profile.fetch() Π²ΠΊΠ»ΡŽΡ‡Π²Π° Π½ΠΎΠ²ΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅. Π—Π° ΠΎΠ±Ρ€Π°Ρ‚Π½Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ с външни ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π½Π° Π΄Π°Π½Π½ΠΈ Π·Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€Π°Π½Π΅, Ρ‚ΠΎΠΉ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ Ρ‡Ρ€Π΅Π· ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° include_meta=false.
    • Новият ΠΌΠΎΠ΄ΡƒΠ» Profile.Allocs Π²ΠΈ позволява Π΄Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€Π°Ρ‚Π΅ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°. Записва сС прослСдяванС Π½Π° стСка Π½Π° Ρ‚ΠΈΠΏΠ° ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° всяко Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΡŠΡ‚ sample_rate позволява пропусканСто Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΡƒΠ΅ΠΌ Π±Ρ€ΠΎΠΉ разпрСдСлСния, намалявайки производитСлността.
    • ΠŸΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° CPU с фиксирана ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚ Π²Π΅Ρ‡Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС изпълнява ΠΎΡ‚ потрСбитСля, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π·Π°Π΄Π°Ρ‡ΠΈΡ‚Π΅ сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚, Π±Π΅Π· ΠΏΡŠΡ€Π²ΠΎ Π΄Π° сС Π·Π°Ρ€Π΅ΠΆΠ΄Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŠΡ‚, ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚ΡŠΡ‚ Ρ‰Π΅ сС ΠΏΠΎΠΊΠ°Π·Π²Π°, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ сС изпълнява. Π’ MacOS ΠΈ FreeBSD натиснСтС ctrl-t ΠΈΠ»ΠΈ ΠΈΠ·Π²ΠΈΠΊΠ°ΠΉΡ‚Π΅ SIGINFO. Π—Π° Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°ΠΉΡ‚Π΅ SIGUSR1, Ρ‚.Π΅. % ΡƒΠ±ΠΈΠ²Π°Π½Π΅ -USR1 $julia_pid. Π’ΠΎΠ²Π° Π½Π΅ Π΅ Π½Π°Π»ΠΈΡ‡Π½ΠΎ Π² Windows.
  • ΠžΠ’Π“ΠžΠ’ΠžΠ Π˜
    • RadioMenu Π²Π΅Ρ‡Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ клавишни ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ Π·Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π΅Π½ ΠΈΠ·Π±ΠΎΡ€ Π½Π° ΠΎΠΏΡ†ΠΈΠΈ.
    • ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎΡΡ‚Ρ‚Π° "?(x, y", послСдвана ΠΎΡ‚ натисканС Π½Π° TAB, ΠΏΠΎΠΊΠ°Π·Π²Π° всички ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΈΠ·Π²ΠΈΠΊΠ°Π½ΠΈ с Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈ x, y, .... (Π˜Π½Ρ‚Π΅Ρ€Π²Π°Π»ΡŠΡ‚ Π² Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Π²ΠΈ ΠΏΡ€Π΅Ρ‡ΠΈ Π΄Π° Π²Π»Π΅Π·Π΅Ρ‚Π΅ Π² ΠΏΠΎΠΌΠΎΡ‰Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ.) "MyModule.?(x, y " ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π°Π²Π° Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅Ρ‚ΠΎ Π΄ΠΎ "MyModule". НатисканСто Π½Π° TAB изисква ΠΏΠΎΠ½Π΅ Π΅Π΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π΄Π° Π΅ ΠΎΡ‚ Ρ‚ΠΈΠΏ, ΠΏΠΎ-спСцифичСн ΠΎΡ‚ Any. Или ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ SHIFT-TAB вмСсто TAB, Π·Π° Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚Π΅ всички ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ.
    • Новата Π³Π»ΠΎΠ±Π°Π»Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° err Π²ΠΈ позволява Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ послСдното ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ans с послСдния ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€. Π’ΡŠΠ²Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠ° ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚Π²Π° ΠΎΡ‚Π½ΠΎΠ²ΠΎ информацията Π·Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ.
  • Π Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви
    • ΠŸΡ€Π΅ΠΌΠ΅ΡΡ‚Π΅Ρ‚Π΅ ΠΊΠΎΠ΄Π° Π½Π° SparseArrays ΠΎΡ‚ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ Π½Π° Julia във Π²ΡŠΠ½ΡˆΠ½ΠΎΡ‚ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π½Π° SparseArrays.jl.
    • НовитС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° конкатСнация sparse_hcat, sparse_vcat ΠΈ sparse_hvcat Π²Ρ€ΡŠΡ‰Π°Ρ‚ Ρ‚ΠΈΠΏ SparseMatrixCSC, нСзависимо ΠΎΡ‚ Ρ‚ΠΈΠΏΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π²Ρ…ΠΎΠ΄Π½ΠΈΡ‚Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈ. Π’ΠΎΠ²Π° стана Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π° уСднаквяванС Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° слСпванС Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ слСд раздСлянСто Π½Π° ΠΊΠΎΠ΄Π° LinearAlgebra.jl ΠΈ SparseArrays.jl.
  • Π’Π»ΠΈΠ·Π°Π½Π΅
    • Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΈΡ‚Π΅ Π½ΠΈΠ²Π° Π½Π° рСгистриранС BelowMinLevel, Debug, Info, Warn, Error ΠΈ AboveMaxLevel Π²Π΅Ρ‡Π΅ сС Скспортират ΠΎΡ‚ стандартната Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π° рСгистриранС.
  • 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

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€