Size: a a a

2020 June 30

AM

Aliaksandr Martsinov... in pro.elixir
источник

E

Eugene in pro.elixir
ну ок, давайте временнно будем на это всё смотреть глазами отца нашего Хаскеля!
источник

AD

Anastasiya Dyachenko in pro.elixir
Максим
Ну тут ещё можно пообсуждать старый добрый срач, что эрланг/эликсир - это ООП на самом деле, а не ФП
это факт, конец обсуждения
источник

E

Eugene in pro.elixir
Матерная брань тут — нормуль? В каждой избушке свои погремушки. Тут как принято?
источник

ŹR

Źmićer Rubinštejn in pro.elixir
(Int, Int, Iterable[Int]) -> Int
 def foo (range_start, range_end, mandatory_numbers) do
   create_range(start..finish)
   |> Enum.filter(&check_list_inclusion(&1, mandatory_numbers))
   |> Enum.sum()
 end

 (Int, Int) -> Iterable[Int]
 def create_range(start, finish), do: start..finish
 
 
 (Int, Iterable[Int]) -> Bool
 def check_list_inclusion(number, mandatory_numbers_list) do
   Enum.all?(
     mandatory_numbers_list,
     &check_single_inclusion(number, &1)
   )
 end
 
 (Int, Int) -> Bool
 def check_single_inclusion(number, single_number) do
   String.contains?(to_string(number), to_string(single_number))
 end


Вот я набросал код - решение задачи крче твоей. Уважаемые знатоки, внимание вопрос: где цикл?
источник

AD

Anastasiya Dyachenko in pro.elixir
Enum.filter, Enum.all
источник

E

Eugene in pro.elixir
я такоэ пока переварить не в силах, так что воздержусь от комментариев!
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Как вы можете наблюдать, high ordered functions работают как фреймворк - вызывают нами написанный линейный код.
источник

AD

Anastasiya Dyachenko in pro.elixir
А зачем create_range нужна?
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Для того чтобы посмотреть, как преобразуются типы
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Тут как бы не совсем валидный эликсир код
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Главное - идея
источник

E

Eugene in pro.elixir
а если закачик просит не использовать Enum?
источник

М

Максим in pro.elixir
Бежать от такого заказчика ибо идиот
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Eugene
а если закачик просит не использовать Enum?
Очевидно это не правильный вопрос в любом случае
источник

E

Eugene in pro.elixir
тогда это уже не коммерческая разработка, а что-то другое!
источник

ŹR

Źmićer Rubinštejn in pro.elixir
А если заказчик попросит программировать без букв от a до h?
источник

М

Максим in pro.elixir
Писать на брейнфаке, очевидно
источник

E

Eugene in pro.elixir
ок, лично я дальше нить рассуждений не могу поддержать
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Если бы Enum не было в стандартной библиотеке - я бы сделал себе helper функцию reduce на основе рекурсии или цикла - в зависимости от языка
источник