Alexander
Непризнанный гений, что ли
Alexander
конечно верит
Alexander
мне кажется, что по его мнению он вполне признаный
Alexander
как в cabal testsuite проверить что определенные файлы поставились?
тот
пустить стрим ему можно, покажет, расскажет
Alexander
ленивость по умолчанию, вывод типов, прочие ФП удобства поменьше
Но скалист не сможет использовать знание про ленивость по умолчанию, и про вывод типов тоже не совсем. Это больше для расширения кругозора, а не для перенесения знаний в другой язык (Скала в нашем случае). ФП удобства, как то же каррирование, тоже не все могут быть заиспользованы
Alexander
Я бы сказал, Haskell может дать более качественную интуицию про типы.
Nikolay
А что в скале нету вывода типов?
A64m
нет
Alexander
у вывода типов с сабтайпингом вроде все печально
Ю ли я? 🤔
В F# есть и глобальный, но от сабтайпинга он ломается при каждом чихе
Nikolay
нет
А чем это отличается от type inference в скале?
A64m
в скале реконструкция типов
Alexander
так линзы снова
Alexander
есть T = E A | I B если я хочу применить A -> m A вернув m T если соотв ветка
Alexander
то это кого звать
Nikolay
в скале реконструкция типов
В чем отличие? Хотелось бы понять
Alexander
о у меня есть ещё более классный линзовопрос
Alexander
блин, напишу без линз чтоли
Alexander
@A64m_qb0 у меня есть твой код matching (below _I)
Alexander
работает для T= E TE | I TI
Alexander
теперь у меня [Either X T]
A64m
а надо что?
Alexander
и хотелось бы получить Either TE (EIther X TI) на выходе
Alexander
опс
Alexander
Either [Either X T] [Either X TI]
Nikolay
а надо что?
Хочется понять отличия Чкаловского type inference от хаскеля
Nikolay
Можно пример из хаскель?
Alexander
в общем тоже самое если не сматчилось, а матчить Left и Right I
A64m
так, погодите, не все сразу
Alexander
я пока без линз переписываю, отвечай Nikolay :)
Alexander
без линз написал
A64m
Хочется понять отличия Чкаловского type inference от хаскеля
упрощенно говоря, вывод типов, когда все выводится без аннотаций, есть принципал тайп и т.д. ну какие-то расширения могут это портить и где-то что-то придется проаннотировать. По большому счету это дамас-милнер и его вариации. реконструкция, это когда без аннотаций все не выводится, но в некоторых случаях, кое-где типы можно не писать. Тут куча разных алгоритмов, в том числе и каких-то эвристических
A64m
без линз написал
и что без линз? а то я и не понял что надо-то
Alexander
let match x (Right (E x):_) = Left x match x (Left y:ys) = (Left y:) <$> mach x ys match x (Right (I y):ys) = (Right y:) <$> match x ys
Alexander
в общем мне нужно более сложный предикат в matching
Alexander
или _Left или _Right . _I
Alexander
не знаю как это записать
A64m
в смысле или все Left или все _Right . _l или все или первое или второе?
Anonymous
Графических ЯП тоже довольно много, в том числе и "используемых в продакшне". (В кавычках потому, что это какие-то крайности).
> основали и развили язык Luna А где они сейчас, кстати? Есть представление куда двигаться? Есть спрос? Вроде обновления выходят - 1.3beta уже.
Alexander
> основали и развили язык Luna А где они сейчас, кстати? Есть представление куда двигаться? Есть спрос? Вроде обновления выходят - 1.3beta уже.
Последнее, что мне известно, я почерпнул с их форума месяца четыре назад. Они искали ниши, куда можно было быть продать язык. И работали над релизом. Но кажется, релизная версия 1 была скорее альфой, потому что когда я установил язык и попробовал всякое, то он очень тормозил (что еще ладно) и крашился, стоило только чуть-чуть отойти от демонстрационного сценария. Даже графический редактор мог закрашиться ни на чем, пока ты там что-то меняешь. А мои коллеги, в целом, больше не следят за языком
Alexander
предикат если у нас Right (Left) x возвращаем Left, если _Right . _I, возвращаем Right Right, если не то и не другое то возвращаем Left агрумента
Alexander
@A64m_qb0 так опять к matching (below _I) а как мне это в списке список сделать?
A64m
traverse . below _l ?
Alexander
действительно
Anatolii
Anatolii
не оч понял как так получлиось
Anatolii
но что-то пошло не так
Alexander
21G D state?
Anatolii
ага
Anton
А в чем сейчас модно делать презентации по Хаскелю? Чтоб стильно и молодёжно. (Что-то более модное, чем reveal.js интересует)
Ignat
Странные люди зачем-то используют slides.com
Ignat
Лучший выбор офк beamer
Aragaer
я предпочитаю делать в гугле
Alexander
Зачем заморачиваться? Google Docs и все. Дело ж не в красивостях. Плохому докладчику они не помогут
Alexander
последние 2 я делал в slides :(
Alexander
до этого с beamer, и там и там есть модные твиговские темы
Anton
Спасибо всем. Посмотрю на твиговские схемы. Может и к странным людям прибьюсь 😉
Alexander
ну они не публичные, не знаю может как то и шарится
Alexander
некоторые люди из маркдауна пандоком генерят
Alexander
если нужны простые слайды, то самый легковесный способ наверное
Alexander
это канал об аниме, как в постргесе написать запрос вида a[x]-a[x-1] если у таблички есть сортировка
Dmitry
Сджоинить с собой же, например
Dmitry
tbl AS a LEFT JOIN tbl AS b ON (a.id = b.id + 1)
Dmitry
https://www.gab.lc/articles/10_tip_and_tricks_part_2/#tip7
Leonid 🦇
Window function
Leonid 🦇
https://www.postgresql.org/docs/10/static/functions-window.html вроде lag это делает
Alexander
Вот ещё вариант: https://prezi.com Не пользовался. Наткнулся случайно.
А это не та штука, про которую говорят, что она на Haskell написана?
Leonid 🦇
Select x - lag(x) over (order by id)
Leonid 🦇
@qnikst ^
Anonymous
Может быть. Не знаю. Как-то случайно наткнулся. При каких обстоятельствах - не помню.
Anatolii
Prezi на сайте эльма упомянут
Alexander
о круто, пасиба