SS
fun { 1 + 1 }
вместо fun({ 1 + 1 })
Если привыкнуть, то так гораздо удобнее. Если в начале есть другие параметры, то вот так:fun(1234) { 1 + 1 }, вместо
fun(1234, {1 + 1})
Я тут придумал, как можно нормально делать цепочки вызова функций. Для этого в ЯП нужно сделать так, чтобы первый параметр передавался через стрелочку справа, и так не будет записи функций в обратном порядке123 -> fun1(321) -> fun2 ->
fun(5)
вместоfun3(fun2(fun1(123, 321)), 5)
Так в разы читабельнее.Далее возврат значения можно тоже заменить на какие-нибудь символы, чтобы не было путаницы между функциями, в которых нужно писать return, и лямбдами, в которых нужно писать выражение.
Например как-то так:
fun lalala() {Тут символ # вместо return.
# very*long+expression
}
Теперь лямбда
fun(a, b) { # very+long+expression+with*a/and+b }
И зачем это, спросите? Ну, нужно в лямбдах на несколько строкfun(a, b){
var x = longExpression
var y = longExpression
if (x > y)
x /= y
# x + y
}
Символ можно взять другой. Например <<
или еще какой.Символом вместо return можно добиться единства в функциях и лямбдах. В итоге у нас одинаковый стиль.
Минимальная лямбда -
fun{}
. О синатаксисе можно подумать...