
Vlad
26.04.2017
20:46:13
Даже так можно: inject(nil){ |buffer, e| buffer ||= [some code].as(&:self_if_any_not_nil) }
as возвращает результат, tap возвращает объект, который тапился

Danila
26.04.2017
20:47:03
а проблему какую решаешь?

Vlad
26.04.2017
20:47:30
Ты ведь издеваешься?

Google

Danila
26.04.2017
20:47:38
нет
я не понимаю что тут происходит
я же говорю, у меня с кодом плохо
мне проще на словах

Kirill
26.04.2017
20:47:59
+1

Vlad
26.04.2017
20:48:19
В общем, я показал, что as != tap, кому надо - пользуйтесь

Danila
26.04.2017
20:48:37
так ты объяснишь или нет, что этот код делает?
и зачем такое может пригодиться
может кто то другой мне пояснит?
если автор не хочет
@bikolya поясни ты

Nikolay
26.04.2017
20:50:56
да ты троллишь видимо
чего там может быть непонятно?

Google

Nikolay
26.04.2017
20:51:13
as возвращает результат
tab возвращает объект
tap != as
вот и все

Danila
26.04.2017
20:51:33
:(

Nikolay
26.04.2017
20:52:54
вместо select ты юзаешь рефайнмент и as, не читал чтоли книгу матца?

Danila
26.04.2017
20:53:33
не, я в джаву не умею

Nikolay
26.04.2017
20:54:49
ну вот и образовывайся, юниор

Danila
26.04.2017
20:55:07
пиздец говно конечно какое то
просишь человека объяснить какую он задачу решает
он говорит "ты че тралишь"
типа "ты че дебил, люди такие вещи пишут по утрам чтоб микроволновку открыть"
манямирок какой то

Vlad
26.04.2017
20:59:58

Danila
26.04.2017
21:00:18
опытом чего?
опыт это решение проблем
а не написание метаговна
я принесу решение теоремы на прологе и скажу вот поделился сниппетом, считайте опытом
?

Vlad
26.04.2017
21:02:52
Я не согласен, но мне похуй

Google

Danila
26.04.2017
21:03:08
вот и уёбывай
и сниппет свой прихвати

Anton
26.04.2017
21:21:40

Danila
26.04.2017
21:22:16
бряк
пинки

Vlad
26.04.2017
21:22:40

Anton
26.04.2017
21:23:23
бряк
бывает, так что пофиг

Danila
26.04.2017
21:23:28
это просто местный любитель локального патчинга и метапрограммирования
лучше не вступать в дискач

Anton
26.04.2017
21:24:12

Vlad
26.04.2017
21:25:18

Anton
26.04.2017
21:25:36

Anton
26.04.2017
21:25:55
хотя, если ты приведешь мне пример, когда оно действительно работает - я поменяю свое мнение
пока я этого не видел

Danila
26.04.2017
21:26:02
https://twitter.com/javascriptdaily/status/856267407106682880

Vlad
26.04.2017
21:26:40
each { |e| break([some code]) if [some code].none? } - some code может быть длинным

Anton
26.04.2017
21:28:40
переменную сделать?
не использовать однострочники
вынести все в метод
или ты перл разработчик со стажем?

Google

Vlad
26.04.2017
21:29:19
Я согласен, что твоё решение более элегантно
Возможно, as в данном случае не нужен, и не нужен вообще
А, кстати, inject я использую для того, чтобы вернуть nil в случае, если ни одно условие внутри не сработает
each же вернет изначальный объект
Если брейка ни разу не случится
Значит, as оправдан только для уменьшения кол-ва кода
Именно для этого он нужен, чтобы не объявлять переменную. Только для этого. Всё. Это может и не супер-плюс, и Обстракции сложные непонятные, но с задачей "уменьшить кол-во кода" он справляется

Nikolay
26.04.2017
21:32:57
сделай доклад на конференцию или митап про as
может зайдет

Admin
ERROR: S client not available

Nikolay
26.04.2017
21:33:01
и люди начнут юзать

Danila
26.04.2017
21:33:15
на митапе, да

Nikolay
26.04.2017
21:33:17
можешь в AS добавить свой as, dhh точно примет

Danila
26.04.2017
21:33:24
как раз будешь на уровне с другими

Vlad
26.04.2017
21:33:56
*лавров - дебилы, блять

Anton
26.04.2017
21:34:27

Nikolay
26.04.2017
21:34:56

Anton
26.04.2017
21:35:38
вот тебе с find пример, сравни
inject(nil){ |buffer, e| buffer ||= [some code].as{ |a| a unless a.all?(&:nil?) }}
find { |e| [some code].none? }
эти 2 строки делают одно и то же

Google

Vlad
26.04.2017
21:38:33

Danila
26.04.2017
21:38:57
наконец то я понял чего он хотел добиться
кек

Vlad
26.04.2017
21:39:00
Сейчас покумекаю над примером (из реальной задачи вытащить не могу)

Anton
26.04.2017
21:39:18

Danila
26.04.2017
21:39:27
потому что nda

Anton
26.04.2017
21:39:29

Vlad
26.04.2017
21:39:46

Danila
26.04.2017
21:39:59
написать меньше кода!
хуевый код значит

Anton
26.04.2017
21:40:24

Danila
26.04.2017
21:40:32
контекст - два предложения плейнтекстом

Vlad
26.04.2017
21:42:35
Я потрачу на это много времени, поэтому как-нибудь потом

Danila
26.04.2017
21:43:02
это ты

Vlad
26.04.2017
21:43:32
Нет, не похож. Глянь аватарку, я, как минимум, брюнет

Danila
26.04.2017
21:45:16
а ты уверен что в твоём возрасте уже законно рефайнить?

Vlad
26.04.2017
21:46:16
Лол http://stackoverflow.com/questions/7878687/combinatory-method-like-tap-but-able-to-return-a-different-value http://stackoverflow.com/questions/26378890/ruby-reuse-value-in-a-block-without-assigning-it-to-variable-write-object-meth

Dimon
26.04.2017
21:52:55
я кажется понял, ты обфусцируешь код

Klaus
27.04.2017
04:30:53
Поздно утром только сони
Спят, свернувшись калачом,
Мы встаём, лишь солнце тронет
Нас своим косым лучом.

Aleserche
27.04.2017
06:47:52