Язык программирования Nemerle является мультипарадигменным и полнофункциональным языком программирования, впитавшем в себя идеи ML, Lisp, C#.
Возьмем для примера следующий код:
Как тоже самое реализовать в C#? Используя Linq? Но будет ли код тогда такой же однородный и понятный? В примере использованые базовые возможности языка без дополнительных расширений.
Шутка, на самом деле базовый синтаксис Nemerle вообще не содержит таких конструкций как if, foreach и т.д., есть только оператор match, синтаксические расширения (сахар) написан на макросах по аналогии с макросистемой Common Lisp.
Возьмем для примера следующий код:
#pragma indent using Nemerle using System.Console def a = $[1 .. 10] foreach(c when c % 2 == 0 in a with i) WriteLine($"a[$i] = $c")
Как мы видим, одна простая идея, что все есть выражение позволяет нам делать код простым и понятным.Как тоже самое реализовать в C#? Используя Linq? Но будет ли код тогда такой же однородный и понятный? В примере использованые базовые возможности языка без дополнительных расширений.
Шутка, на самом деле базовый синтаксис Nemerle вообще не содержит таких конструкций как if, foreach и т.д., есть только оператор match, синтаксические расширения (сахар) написан на макросах по аналогии с макросистемой Common Lisp.
Комментарии
Отправить комментарий