Size: a a a

2020 October 12

RP

Roman Pushkov in pro.elixir
например для того, чтобы не захламлять другие значением по умолчанию
источник

DF

Denis Fakhrtdinov in pro.elixir
А пример можно?
источник

RP

Roman Pushkov in pro.elixir
def kek(a, b \\ 2)
def kek(a, b), do: a * b
источник

DF

Denis Fakhrtdinov in pro.elixir
Ясно.
источник

AB

Alex Bubnov in pro.elixir
Denis Fakhrtdinov
А в чем смысл этих bodiless clause?
еяпп, это разрешение неоднозначности дефолтов в multihead функциях как раз.
источник

DF

Denis Fakhrtdinov in pro.elixir
А какая там может быть неоднозначность?
источник

V

V in pro.elixir
def foo(:first_case, b \\ 1), do: ...
def foo(:second_case, b \\ 2), do: ...

Либо когда меняешь дефолты - в одной клозе сменил, в другой забыл
источник

LL

Lama Lover in pro.elixir
V
def foo(:first_case, b \\ 1), do: ...
def foo(:second_case, b \\ 2), do: ...

Либо когда меняешь дефолты - в одной клозе сменил, в другой забыл
Можно различные дефолты в различных клозах? О_о
источник

V

V in pro.elixir
не знаю, не пробовал. наверное нельзя
источник

AN

Alexey Novoselov in pro.elixir
Lama Lover
Можно различные дефолты в различных клозах? О_о
можно только с разными arity
источник

C

Combot in pro.elixir
Total messages: 167353
источник

DF

Denis Fakhrtdinov in pro.elixir
Я думаю это yet another syntaxic sugar.

def kek(a, b \\ 2)
def kek(a, b), do: a * b


в Э было бы

ke
k(a) -> kek(a, 1).
kek(a, b) -> a * b.

Всё равно непонятно, почему не написать просто

def kek(a, b \\ 1), do: a * b
источник

DF

Denis Fakhrtdinov in pro.elixir
Исусе, как телега корявит разметку.
источник

AN

Alexey Novoselov in pro.elixir
Denis Fakhrtdinov
Я думаю это yet another syntaxic sugar.

def kek(a, b \\ 2)
def kek(a, b), do: a * b


в Э было бы

ke
k(a) -> kek(a, 1).
kek(a, b) -> a * b.

Всё равно непонятно, почему не написать просто

def kek(a, b \\ 1), do: a * b
можно так писать, если на эту arity только одно тело функции. Если несколько, то получается непонятно, откуда брать и побеждает explicit over implicit
источник

DF

Denis Fakhrtdinov in pro.elixir
Понятно, сахар вносит непонятки, поэтому мы добавим ещё 🙂
источник

DF

Denis Fakhrtdinov in pro.elixir
Забавно.
источник

LL

Lama Lover in pro.elixir
Denis Fakhrtdinov
Понятно, сахар вносит непонятки, поэтому мы добавим ещё 🙂
По-моему органично выглядит достаточно. Для каких-нибудь рубистов-питонистов это будет привычное поведение
источник

PG

Pig Greenest in pro.elixir
Denis Fakhrtdinov
Я думаю это yet another syntaxic sugar.

def kek(a, b \\ 2)
def kek(a, b), do: a * b


в Э было бы

ke
k(a) -> kek(a, 1).
kek(a, b) -> a * b.

Всё равно непонятно, почему не написать просто

def kek(a, b \\ 1), do: a * b
источник

DF

Denis Fakhrtdinov in pro.elixir
Я понимаю.
источник

LL

Lama Lover in pro.elixir
А чего это у тебя в шелле нет подсветки синтаксиса?
источник