рдХреНрд░рд┐рд╕реНрдЯрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ 1.5

рдХреНрд░рд┐рд╕реНрдЯрд▓ 1.5 рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖реЗрдЪреЗ рдкреНрд░рдХрд╛рд╢рди рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреНрдпрд╛рдЪреЗ рд╡рд┐рдХрд╕рдХ рд░реБрдмреА рднрд╛рд╖реЗрддреАрд▓ рд╡рд┐рдХрд╛рд╕рд╛рдЪреА рд╕реЛрдп C рднрд╛рд╖реЗрдЪреНрдпрд╛ рдЙрдЪреНрдЪ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рд╕рд╣ рдПрдХрддреНрд░ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реАрдд рдЖрд╣реЗрдд. рдХреНрд░рд┐рд╕реНрдЯрд▓рдЪреЗ рд╡рд╛рдХреНрдпрд░рдЪрдирд╛ рд░реБрдмреАрдЪреНрдпрд╛ рдЬрд╡рд│ рдЖрд╣реЗ, рдкрд░рдВрддреБ рд░реБрдмреАрд╢реА рдкреВрд░реНрдгрдкрдгреЗ рд╕реБрд╕рдВрдЧрдд рдирд╛рд╣реА, рдЬрд░реА рдХрд╛рд╣реА рд░реБрдмреА рдкреНрд░реЛрдЧреНрд░рд╛рдореНрд╕ рдмрджрд▓рд╛рд╢рд┐рд╡рд╛рдп рдЪрд╛рд▓рддрд╛рдд. рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛрдб рдХреНрд░рд┐рд╕реНрдЯрд▓рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ Apache 2.0 рд▓рд╛рдпрд╕рдиреНрд╕ рдЕрдВрддрд░реНрдЧрдд рд╡рд┐рддрд░рд┐рдд рдХреЗрд▓рд╛ рдЖрд╣реЗ.

рднрд╛рд╖рд╛ рд╕реНрдерд┐рд░ рдкреНрд░рдХрд╛рд░ рддрдкрд╛рд╕рдгреА рд╡рд╛рдкрд░рддреЗ, рдХреЛрдбрдордзреНрдпреЗ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕рдЪреЗ рдкреНрд░рдХрд╛рд░ рдЖрдгрд┐ рдкрджреНрдзрдд рд╡рд┐рддрд░реНрдХ рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рди рдХрд░рддрд╛ рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рдХреНрд░рд┐рд╕реНрдЯрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдореНрд╕ рдПрдХреНрдЭрд┐рдХреНрдпреБрдЯреЗрдмрд▓ рдлрд╛рдЗрд▓реНрд╕рдордзреНрдпреЗ рд╕рдВрдХрд▓рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд, рдЬреНрдпрд╛рдордзреНрдпреЗ рдореЕрдХреНрд░реЛрдЪреЗ рдореВрд▓реНрдпрдорд╛рдкрди рдХреЗрд▓реЗ рдЬрд╛рддреЗ рдЖрдгрд┐ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛рдирд╛ рдХреЛрдб рддрдпрд╛рд░ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рдХреНрд░рд┐рд╕реНрдЯрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдореНрд╕рдордзреНрдпреЗ, рд╕реА рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓реНрдпрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧреНрдЬ рдХрдиреЗрдХреНрдЯ рдХрд░рдгреЗ рд╢рдХреНрдп рдЖрд╣реЗ. рдХреЛрдб рдПрдХреНрдЭрд┐рдХреНрдпреВрд╢рдирдЪреЗ рд╕рдорд╛рдВрддрд░реАрдХрд░рдг тАЬрд╕реНрдкреЙрдитАЭ рдХреАрд╡рд░реНрдб рд╡рд╛рдкрд░реВрди рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдлрд╛рдпрдмрд░ рдирд╛рд╡рд╛рдЪреНрдпрд╛ рд╣рд▓рдХреНрдпрд╛ рд╡рдЬрдирд╛рдЪреНрдпрд╛ рдереНрд░реЗрдбреНрд╕рдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд, рдореБрдЦреНрдп рдереНрд░реЗрдб рдмреНрд▓реЙрдХ рди рдХрд░рддрд╛, рдкрд╛рд░реНрд╢реНрд╡рднреВрдореА рдХрд╛рд░реНрдп рдЕрд╕рд┐рдВрдХреНрд░реЛрдирд╕рдкрдгреЗ рдЪрд╛рд▓рд╡рд┐рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ.

рдорд╛рдирдХ рд▓рд╛рдпрдмреНрд░рд░реА CSV, YAML рдЖрдгрд┐ JSON рд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рд╛рдзрдиреЗ, HTTP рд╕рд░реНрд╡реНрд╣рд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдШрдЯрдХ рдЖрдгрд┐ WebSocket рд╕рдорд░реНрдердирд╛рд╕рд╣ рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░реНрдпрд╛рдВрдЪрд╛ рдПрдХ рдореЛрдард╛ рд╕рдВрдЪ рдкреНрд░рджрд╛рди рдХрд░рддреЗ. рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпреЗрджрд░рдореНрдпрд╛рди, "рдХреНрд░рд┐рд╕реНрдЯрд▓ рдкреНрд▓реЗ" рдХрдорд╛рдВрдб рд╡рд╛рдкрд░рдгреЗ рд╕реЛрдпреАрд╕реНрдХрд░ рдЖрд╣реЗ, рдЬреЗ рдХреНрд░рд┐рд╕реНрдЯрд▓ рднрд╛рд╖реЗрддреАрд▓ рдХреЛрдбрдЪреНрдпрд╛ рдкрд░рд╕реНрдкрд░ рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд╕рд╛рдареА рд╡реЗрдм рдЗрдВрдЯрд░рдлреЗрд╕ (рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ: 8080 рдмрд╛рдп рдбреАрдлреЙрд▓реНрдЯ) рддрдпрд╛рд░ рдХрд░рддреЗ.

рдореБрдЦреНрдп рдмрджрд▓:

  • рдХрдВрдкрд╛рдЗрд▓рд░рдиреЗ рдЕрдореВрд░реНрдд рдкрджреНрдзрддреАрдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдордзреНрдпреЗ рдЖрдгрд┐ рддреНрдпрд╛рдЪреНрдпрд╛ рд╡реНрдпрд╛рдЦреНрдпреЗрдордзреНрдпреЗ рдпреБрдХреНрддрд┐рд╡рд╛рджрд╛рдЪреНрдпрд╛ рдирд╛рд╡рд╛рдВрдЪреНрдпрд╛ рдкрддреНрд░рд╡реНрдпрд╡рд╣рд╛рд░рд╛рд╕рд╛рдареА рдПрдХ рдЪреЗрдХ рдЬреЛрдбрд▓рд╛ рдЖрд╣реЗ. рдирд╛рд╡ рдЬреБрд│рдд рдирд╕рд▓реНрдпрд╛рд╕, рдЖрддрд╛ рдПрдХ рдЪреЗрддрд╛рд╡рдгреА рдЬрд╛рд░реА рдХреЗрд▓реА рдЬрд╛рддреЗ: рдЕрдореВрд░реНрдд рд╡рд░реНрдЧ FooAbstract abstract def foo(number : Int32): Nil end class Foo < FooAbstract def foo(name : Int32) : Nil p name end end 6 | def foo(name : Int32) : Nil ^тАФ рдЪреЗрддрд╛рд╡рдгреА: рд╕реНрдерд┐рддреАрд╡рд┐рд╖рдпрдХ рдкреЕрд░рд╛рдореАрдЯрд░ 'рдирд╛рд╡' рд╣реЗ рдЕрдзрд┐рд▓рд┐рдЦрд┐рдд рдкрджреНрдзрддреАрдЪреНрдпрд╛ FooAbstract#foo(number : Int32) рдЪреНрдпрд╛ рдкреЕрд░рд╛рдореАрдЯрд░ 'рдирдВрдмрд░'рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╣реЗ, рдЬреНрдпрд╛рдЪреЗ рдирд╛рд╡ рд╡реЗрдЧрд│реЗ рдЖрд╣реЗ рдЖрдгрд┐ рдирд╛рдорд┐рдд рд╡рд┐рддрд░реНрдХ рдкрд╛рд╕рд┐рдВрдЧрд╡рд░ рдкрд░рд┐рдгрд╛рдо рд╣реЛрдК рд╢рдХрддреЛ.
  • рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓рдЪреНрдпрд╛ рд╡реНрд╣реЕрд▓реНрдпреВрд▓рд╛ рдЯрд╛рдЗрдк рди рдХреЗрд▓реЗрд▓реНрдпрд╛ рдкрджреНрдзрддреАрд▓рд╛ рд╡рд┐рддрд░реНрдХ рдирд┐рдпреБрдХреНрдд рдХрд░рддрд╛рдирд╛, рдЖрд░реНрдЧреНрдпреБрдореЗрдВрдЯ рдЖрддрд╛ рддреНрдпрд╛ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓рдЪреНрдпрд╛ рдкреНрд░рдХрд╛рд░рд╛рд╕рд╛рдареА рдорд░реНрдпрд╛рджрд┐рдд рдЖрд╣реЗ. рд╡рд░реНрдЧ Foo @x : Int64 def initialize(x) @x = x # рдкреЕрд░рд╛рдореАрдЯрд░ x @x end end рдЯрд╛рдИрдк рдХреЗрд▓рд╛ рдЬрд╛рдИрд▓
  • рддреБрдореНрд╣рд╛рд▓рд╛ рдкрджреНрдзрддреА рдХрд┐рдВрд╡рд╛ рдореЕрдХреНрд░реЛрдЪреНрдпрд╛ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рдордзреНрдпреЗ рднрд╛рд╖реНрдп рдЬреЛрдбрдгреНрдпрд╛рдЪреА рдЕрдиреБрдорддреА рджреЗрддреЗ. def foo(@[MaybeUnused] x); рд╢реЗрд╡рдЯ # рдареАрдХ рдЖрд╣реЗ
  • рдЯреНрдпреВрдкрд▓реНрд╕рдордзреНрдпреЗ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдЖрдгрд┐ рдирд╛рд╡реЗ рдореНрд╣рдгреВрди рд╕реНрдерд┐рд░рд╛рдВрдХ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ. KEY = "s" foo = {s: "рд╕реНрдЯреНрд░рд┐рдВрдЧ", n: 0} foo[KEY].size рдареЗрд╡рддреЗ
  • рдлрд╛рдЗрд▓реНрд╕ рдЖрдгрд┐ рдбрд┐рд░реЗрдХреНрдЯрд░реА рд╣рдЯрд╡рдгреНрдпрд╛рд╕рд╛рдареА рдлрд╛рдЗрд▓ API рдордзреНрдпреЗ рдирд╡реАрди рдлрд╛рдЗрд▓#delete? рдкрджреНрдзрддреА рдЬреЛрдбрд▓реНрдпрд╛ рдЧреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд. рдЖрдгрд┐ Dir#delete?, рдЬреЗ рдлрд╛рдИрд▓ рдХрд┐рдВрд╡рд╛ рдбрд┐рд░реЗрдХреНрдЯрд░реА рдЧрд╣рд╛рд│ рдЕрд╕рд▓реНрдпрд╛рд╕ рдЦреЛрдЯреЗ рдкрд░рдд рдХрд░рддрд╛рдд.
  • File.tempfile рдкрджреНрдзрддреАрдЪреЗ рд╕рдВрд░рдХреНрд╖рдг рдмрд│рдХрдЯ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреЗ рдЖрддрд╛ рдлрд╛рдЗрд▓ рдирд╛рд╡ рддрдпрд╛рд░ рдХрд░рдгрд╛рд▒реНрдпрд╛ рдУрд│реАрдВрдордзреНрдпреЗ рд╢реВрдиреНрдп рд╡рд░реНрдгрд╛рдВрдирд╛ рдкрд░рд╡рд╛рдирдЧреА рджреЗрдд тАЛтАЛрдирд╛рд╣реА.
  • рдПрдирд╡рд╛рдпрд░рдореЗрдВрдЯ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ NO_COLOR рдЬреЛрдбрд▓реЗ, рдЬреЗ рдХрдВрдкрд╛рдЗрд▓рд░ рдЖрдгрд┐ рдЗрдВрдЯрд░рдкреНрд░рд┐рдЯрд░ рдЖрдЙрдЯрдкреБрдЯрдордзреНрдпреЗ рд░рдВрдЧ рд╣рд╛рдпрд▓рд╛рдЗрдЯрд┐рдВрдЧ рдЕрдХреНрд╖рдо рдХрд░рддреЗ.
  • рдЗрдВрдЯрд░рдкреНрд░рд┐рдЯрд░ рдореЛрдбрдордзреАрд▓ рдХрд╛рдо рд▓рдХреНрд╖рдгреАрдпрд░реАрддреНрдпрд╛ рд╕реБрдзрд╛рд░рд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ.

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛