Vasily
Причем местами очень
Vasily
Есличо
Ilya
поэтому их юзают только упоротые
Ilya
забыл что это чат по F#....
Vasily
С фшарп аналогично
Vasily
Про эти коллекции
Vasily
Мы недавно делали замеры
Vasily
Очень там все грустно
Ilya
быстрые коллекции это либо массивы, либо хештаблицы
Ilya
первые из за локальности данных, вторые из за индекса
Vladislav
Очень там все грустно
зато весь компилятор списками засран
Doge
иммутабельные коллекции тоже медленные
Не всегда и не везде. IntMap'ы в хаскеле вполне себе норм по скорости.
Андрій
Очень там все грустно
Так от сценария зависит. Обычно это добавление/удаление одного элемента Или это работа через builder
Mikhαil
забыл что это чат по F#....
Мне кажется тебя в школе фшарписты гнобили и мелочь на булочки отбирали если честно
Doge
надо брать, я щитаю
Я скорее про то, что хорошо реализованные иммутабельные структуры данных могут себя разумно показать в подходящих для них кейсах. Очевидно, что если задача выжимать каждый такт, то они не вариант. Но тогда даже те же хэшмапы уже так себе, потому что что хэши - это дорого, что скакание по связным спискам (или деревьям) в цепочке при коллизии, что само вычисление хэша.
Ilya
я не знаю что там внутри (
бинаные деревья https://github.com/dotnet/corefx/blob/master/src/System.Collections.Immutable/src/System/Collections/Immutable/ImmutableList_1.Node.cs#L59
Vladimir
https://github.com/mono/ImmutableCollections/blob/master/System.Collections.Immutable/System.Collections.Immutable/ImmutableList.cs
Igor
бинаные деревья https://github.com/dotnet/corefx/blob/master/src/System.Collections.Immutable/src/System/Collections/Immutable/ImmutableList_1.Node.cs#L59
Вот бинарные это вроде совсем х_во В кложурке хотя бы 32 основание
Vladimir
а раньше были Avl trees похоже
а не, это я моновскую репу открыл)
Doge
хешмапы для поиска одного элемента - самый быстрый способ, после индекса
Я про то, что вполне себе есть кейсы, где кроме индексов нет альтернативных вариантов.
Ilya
индекс - смещение массива
Ilya
да не, это ещё с сорс генераторов
А что там с сорс генераторами было?
Doge
Потому что вычисление хэша - это уже куча тактов
Doge
И молчу про другую машинерию
Ilya
А что там с сорс генераторами было?
да забанили меня тут за то что F# умирает
Ilya
Потому что вычисление хэша - это уже куча тактов
хеши всё таки сделаны так, чтобы вычисляться быстро
Ilya
И как? Помогло?
дак я то был за то, что F# живее всех живых
Ilya
вон даже либы для иммутабл пишут
Doge
хеши всё таки сделаны так, чтобы вычисляться быстро
А какая разница, если у тебя в одном случае 1 инструкция чтобы достать элемент, в другом - минимум десятки, чтобы посчитать хэш, потом ещё десятки минимум, чтобы достать элемент непосредственно из хэшмапы
Doge
Хэшмапы, увы, не настолько бесплатные насколько их привыкли считать
Mikhαil
да забанили меня тут за то что F# умирает
Это когда тебе раз десять объяснили почему сорс генераторы это жалкое подобие на нормальное решение а ты бомбил?
Mikhαil
Vladislav
Ilya
но в целом было весело)
Igor
В общем сомнительно удовольствие от Collection.Immutable, когда есть https://github.com/fsprojects/FSharpx.Collections/blob/master/src/FSharpx.Collections/PersistentVector.fs
Ilya
Да вроде сорс генераторы норм. Даже прайм конструкторы теперь есть, благодаря им. Красота же!
Kirill
что происходит при нажатии на контрл шифт ё, на сайте хед хантера?
Mikhαil
что происходит при нажатии на контрл шифт ё, на сайте хед хантера?
Ты вносишься в список орфографических экстремистов и за тобой выезжает отдел ОЭ
Kirill
Ilya
Да вроде сорс генераторы норм. Даже прайм конструкторы теперь есть, благодаря им. Красота же!
вот-вот, а они всё: сорс генераторы, json, смерть F#, смерть дотнета
Sergey
Щас Вася придет и забанит
Roman
можно и не ждать Василия
Vasily
Шо, у Ильи суицидальные наклонности на почве крудов?
Vasily
Ну вот прими
Roman
тут у обоих. Можно на всякий случай всех Ильев забанить
Vasily
Я бы Романов еще до кучи, но я принципиально банами не занимаюсь
Roman
нормас
Крылатый
Бананами.
Viacheslav
Мне кажется тебя в школе фшарписты гнобили и мелочь на булочки отбирали если честно
Это фшарписты раньше почему злые были? Потому что самого фшарпа ещё не было!
R.
поэтому надо перекатываться в скалку
Ayrat
поэтому надо перекатываться в скалку
скалистам пора перекатываться в джавку!
Андрей
а джавистам на гошечку - воронка продаж)
Sergey
А Раст на си
Sergey
Всем _Generic
Roman
пф, еще как
Vladislav
https://reddit.com/r/cpp/comments/lmoz4r/advanced_polymorphism_in_c/
Ilya
F# and F# tools update for Visual Studio 16.9 https://devblogs.microsoft.com/dotnet/f-and-f-tools-update-for-visual-studio-16-9/
Sergey
В джавке не непоФПшничаешь
дружок пирожок тебя научить?
Ayrat
В джавке не непоФПшничаешь
Да я тебя умоляю. Люди там даже патерн матчинг делают!
Ilya
Да я тебя умоляю. Люди там даже патерн матчинг делают!
Там сртп сделано магией компилятора или что то подпилено в рантайме?
Ayrat
Шоооооо
Ilya
Сртп? В джаве?
Ну ебана, языков то много, которые на jvm работают