Vasiliy
Roman
а тут есть любители синтаксиса
from shit in shitList
join anotherShit in anotherShitList
on shi equals anothierShit.Shit
select new crap(shit)
?
Может кто объяснить его прелесть? А то мне стабильно хочется грязно надругаться над трупом мамы автора
Shub
святомайкрософт накажэт. накажэт!
Shub
или, другими словами, число людей, слепо принимающих все, спущенное сверху, на порядки превосходит число людей со здоровым скепсисом
Bonart
Bonart
Да, в большинстве случаев цепной синтаксис рулит, но и у sql-like есть своя ниша
Vasiliy
Vasiliy
если это c#
Vasiliy
только как я понял, МС забили на развитие такого подхода?
Bonart
Vasiliy
намного удобнее
Shub
Shub
just sying
Vasiliy
Уже поздно, ну и мы стараемся так больше не делать, но ентерпрайз все еще кроваваый
Romɑn
Божечки, какая прелесть.
Romɑn
Vasily
Vladislav
Vladislav
В сишарпе тянет блевать
Vladislav
Думаю ответ ожидаем)
Vladislav
Мне моя одна портянка на сишарпе до сих пор в кошмарах снится
Vladislav
Там строк 50 было
Hog
Там строк 50 было
вот таких к стенке надо.... потом заманаешься их испражнения поддерживать
Vladislav
Vladislav
Потом спину розгами бил
Vladislav
50 раз
Vladislav
И отправился на Афон
Hog
а надо было - 256!
Vladislav
Где сверху сошёл фшарп
Hog
Vasiliy
Vasiliy
Hog
Как теперь это развидеть!!!1
Vasiliy
и внизу select на 80 полей
Vasiliy
но все еще лучше, чем fluent api join
Hog
у тебя выбор неудалённых юзеров тут 256 раз
Hog
а не - 2
Hog
остальное иные коллекции
Vasiliy
почему 256?
Hog
0..255
Hog
:)
Фил Ранжин
Фил Ранжин
хуйня
Фил Ранжин
я на аксапте работал
Фил Ранжин
у меня файл с запросом пол часа открывала студия
Фил Ранжин
я представления не имею, какие ебанутые черти его писали, этот запрос
Фил Ранжин
но у меня была таска "предложить оптимизации"
Фил Ранжин
я не предложил
Vladislav
Фил Ранжин
ну, я там всего два месяца проработал
Фил Ранжин
там у них свой ЯП - x++
Vladislav
Ага
Hog
Фил Ранжин
чистое, кристализованное зло
Hog
SalesForce API выдаёт хульярды байт хмля. в 21 веке!
Hog
согласился продажникам помочь на свою голову
Hog
а то у меня от фульмы глаз дёргался
Hog
теперь оба
Igor
@eglyph а в ocaml row полиморфизм работает только для object? С рекордами я не могу так писать?
Shub
что, простите?
Shub
полиморфизм работает на типах, я что-то не припомню исключений для объектов
Shub
https://caml.inria.fr/pub/docs/manual-ocaml/polymorphism.html
Shub
или ты про что-то типа такого: http://keleshev.com/cortege-a-row-polymorphic-tuple ?
Igor
Shub
ну откровенно говоря, в этой части я плаваю, всегда приходится гуглить
Igor
ну откровенно говоря, в этой части я плаваю, всегда приходится гуглить
Те с объектами я могу написать
let foo a b =
a#one + b#two
И мне выведится функция с типом
A<a#int, ..> -> B<b#int, ..> -> int
и скормить туда я могу любимой объект где есть минимум эти проперти (и любые другие)
А вот с рекордом там выводится первый попавшийся тип и более "широкий" туда даже нельзя передать
Shub
с рекордами тема известная, т.к. там тип выводится по структуре
Shub
то есть это проявляется не только в этом
Shub
было предложение делать алиасы типов
Igor
И опять таки интересно что там в ReasonML, тк в purescript/eml(вроде) - row полиморфизм работает так же и для рекордов
Vasiliy
1) я щас понял, что мог бы писать вспомогательную чать программы для диплома на f#
2) лол. кажется осознал что такео type providers :D :D
Shub
Igor
каким образом, интересно?
https://i.gyazo.com/a5472438e3bde71c280443b340e67658.png
Вот пример
http://try.purescript.org/?gist=b80be527ada3eab47dc5&session=35943560-dd1d-4470-fe07-ce74f6427cfe
у функции showPerson o =
o.lastName <> ", " <> o.firstName выводится тип (см пик)
При этом при вызове передается рекорд, у которого больше полей
Shub
строго говоря, там не выводится тип.
Shub
но в окамле такого нет, насколько мне известно
Shub
ну в случае структурной эквивалентности он сработает в любом случае