Anton
Да и вопрос не шибко сложный
Ευγένιος
Ахахахахах.
Anton
Вот как байтики дрочить все гении
Anton
Как архитектурную проблему подсказать как лучше решить - сразу тишина
Anton
Anton
Как архитектурную проблему подсказать как лучше решить - сразу тишина
Прочитай книжку от Дядюшки Боба - чистая архитектура
Anton
Что ты несешь то а
Денис
Задал вопрос по архитектуре
ты так его задал.. я честно прочитал 4 раза
Денис
и так и не понял сути
Денис
я понял, что есть проблема
Денис
но не понял деталей)
Судзумия
Не понял сущности обсуждаемого
Денис
почему в стандартной библиотеке нет функции fn id<T>(x: T) -> T { x } ?
(((Sergey(not seresha))
А зачем?
Andrey
есть же
Andrey
{|x| x}
Денис
Денис
А зачем?
filter_map(|x| x)
Денис
100500 раз уже с таким сталкиваюсь
Судзумия
Ну так напиши сам
Max
Очень жирно, продолжайте
Судзумия
filter_map(|x| x)
Странный у тебя только фильтермэп
(((Sergey(not seresha))
Как легко стать контрибъютором
Судзумия
Непонятно, что делает
Денис
Странный у тебя только фильтермэп
это когда Iterator::Item = Option<...>
Andrey
опшены разворачивает
Судзумия
А, ок
Денис
особенно хорошо заходит после .filter_map(Result::ok)
(((Sergey(not seresha))
Кто вообще контрибъютил уже в репу раста?
Andrey
дальше nursery не ходил пока
Денис
просто это |x| x в потоке функционального кода выглядит несколько странно
Денис
мягко говоря
(((Sergey(not seresha))
Ну да
(((Sergey(not seresha))
Хотя раст все же мультипарадигменный
(((Sergey(not seresha))
С поддержкой императивщены
Денис
я бы сказал, что поддержка там именно функциональная
Денис
потому что императивность более проработана, на мой взгляд )
(((Sergey(not seresha))
Без нее в перформанс сложно
Денис
да я ж не спорю)
(((Sergey(not seresha))
Libcore вроде же вообще более императивная
Денис
просто поддержка функциональщины, такое ощущение, недопилена
Andrey
мультипарадигма
(((Sergey(not seresha))
Надо почитать что там внутри
Денис
мультипарадигма
ахаха) ну так оно обычно и получается, да
(((Sergey(not seresha))
Мутабельность это уже не сильно фп
doc
https://www.reddit.com/r/rust/comments/8i1z6d/entitycomponentsystem_architecture_for_ui_in_rust/
doc
это шрамковская штука?
Денис
и снова в студии premature optimization: https://play.rust-lang.org/?gist=b4561dca07808b7a796c74b6e4781b2b&version=stable&mode=debug есть у кого идеи, как можно по-красивше сделать check_std_headers? пожалуйста не предлагайте собрать all_files в HashSet и потом сравнить пересечение :)
Alexander
Я с ходу не скажу на расте, но это же просто функция in ? Проверить вхождение одного в другое?
Денис
Ну нет
Денис
Мне нужно проверить, что в списке точно есть два нужных мне файла
Alexander
Ну вроде я о том и говорю. На нормальном и удобном языке k это было бы типа так: any f1f2 in f_list
Денис
Точнее это не совсем список, это итератор
Денис
Генератор, если угодно
Alexander
Ну я понимаю, но в целом цель же одна.
Денис
Нет
Денис
В твоём случае имеется полный список
Денис
В моём каждый следующий элемент достаётся потом и кровью
Alexander
Ок, ладно, понял, пусть так, тогда согласен, надо чуть подумать где там in в расте :)
Денис
Решение на любом другом языке меня, думаю, вполне устроит
Денис
Тут же суть не в расте
Денис
А, скорее, в алгоритме
Alexander
Но я конечно извиняюсь, это типично плюсовой в такое мут запихнуть, хотя по логике он особо ни к чему, но хз, может по другому нельзя :)
Alexander
^^^ Но это я не по теме.
Денис
Ну сделай на любом другом языке без мута, но чтобы обработка прекращалась при нахождении всех нужных файлов) представь, что получение каждого следующего элемента списка -- ппц дорогая операция
Alexander
Ok, я чуть позже.
Cat
Мне нужно проверить, что в списке точно есть два нужных мне файла
если тебе каждая итерация дорого стоит, то дёшево проверить вхождение нельзя
Cat
только через хэши, но тебе не нравится
Денис
Я придумал самый дешёвый способ, что смог придумать))
Cat
ну, итерируйся тогда
Денис
Ну в примере же
Cat
а, сорри, я слепой
Денис
Но выглядит это пипец сурово
Денис
В принципе, можно слегка упростить, сделав справедливое предположение, что повторяющихся имён не бывает, и тогда можно просто считать количество совпадений и выходить при достижении нужного количества, но имхо это ещё более уёбищно ))