Machete - .Net рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рд╡рд╛рддрд╛рд╡рд░рдг

рдЙрддреНрдХреГрд╖реНрдЯрддрд╛ рдХреА рдЕрдкрдиреА рдЦреЛрдЬ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ, рдореИрдВрдиреЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рдорд╛рдЪреЗрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдЦреЛрд▓рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред Machete ECMAScript 5 рдорд╛рдирдХ рдХреА рдореЗрд░реА рдЕрдкрдиреА рдмреЛрд▓реА рд╣реИ, рдпрд╛ рдЗрд╕реЗ рдЕрдХреНрд╕рд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ

рдЕрдзрд┐рдХ рд╕рд╣рдЬ рд▓рдВрдмреЛрджрд░ рднрд╛рд╡

var succinct = \(x, y) x + y; var verbose = function (x, y) { return x + y; }; 


рдлрд╝реЙрд░рдЪ рд▓реВрдк рдФрд░ рдЬрдирд░реЗрдЯрд░ рдХреЗ рд╕рд╛рде Iteration рд╕рдорд░реНрдерди

 var numbers = generator { yield 1; yield 2; yield 3; }; foreach (var n in numbers) { Output.write(n); } foreach (var e in ["Array", " objects", " are", " iterable", "!"]) { Output.write(e); } foreach (var ch in "Strings are iterable!") { Output.write(ch); } 

рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди



Machete рдХрдИ рд╡рд░реНрд╖реЛрдВ рдХреЗ рдЕрдиреБрд╕рдВрдзрд╛рди, рдбрд┐рдЬрд╛рдЗрди рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рдЙрддреНрдкрд╛рдж рд╣реИред рдореИрдВрдиреЗ рдЗрд╕реЗ GitHub рдкрд░ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреГрдкрдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЖрдПрдВ рдФрд░ рдХрд╛рдВрдЯрд╛ рдХрд░реЗрдВред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдореБрджрд╛рдп рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдФрд░ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬреЛ рдЕрдореВрд▓реНрдп рд╣реЛрдЧрд╛ред

рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рд▓рд┐рдВрдХ: рдореИрдХрд╣реЗрдЯ рдХреЗ рд▓рд┐рдП рдЧрд┐рдЯрд╣рдм рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА

Source: https://habr.com/ru/post/In125277/


All Articles