Leonid 🦇
Alexander
at?
Alexander
ats ?
A64m
а какие немаргинальные? го, тайпскрипт и котлин?
Alexander
в ats разве не system F?
A64m
а, свифт еще
Alexander
system f не следует обьектность
Кабачок
Новые языки по дефолту маргинальные, ваш КО
Alexander
обьектооинтированность
Vitaly
Alexander
по идее, из systemf следует полиморфизм и наследование
Alexander
обычно все кроме этого в языке уже есть
Anonymous
Alexander
в твиттере
Alexander
современном во всяком случае
Alexander
давай разберемся что такое наследование в смысле ООП
Alexander
это subtyping
Alexander
Г, а:А , А<B
------------------
a:B
Alexander
естественно там выше полторы ошибки
Alexander
но примерно это
Alexander
с классами типов все поведение не кодируется адекватно
Alexander
окей, я не могу формально ничего доказать :(
Alexander
я идею понял, и даже в каком-то смысле соглашусь
Anonymous
Если нудствовать, то в system F нет сабтайпинга. Нужно брать F-sub
Taras 🦀
с вырвыглазными скобочками))
Leonid 🦇
<>(){} - которые вырывают?
Alexander
в защиту си хочу сказать, что на нем вполне можно писать декларативно и в функциональном стиле
Leonid 🦇
в функциональном стиле на ЯП без ГЦ писать в принципе нельзя
Alexander
если не использовать кучу ГЦ и не нужен
Alexander
точнее стэк сам себе идеальный гц
Alexander
плюс поддержка TCO, указатели на фукнции, система типов правда слабая, но это к функциональщине не особо относится
Alexander
стек идеальный GC конечно но захват контекста чуть более чем самая частая операция в функциональной программе
Alexander
или возврат функции результатом
Alexander
которая захватывает контекст
Alexander
что не очень дружит с C-like стеком
Alexander
писать build-map-fold конечно можно и на си
Alexander
или даже monad-like код
Alexander
вон как в расте
Alexander
там неплохое приближение
Leonid 🦇
То С функциональный, то SOLID на free монадах. Куда чат катится?
Alexander
но там много труда вложено в то, чтобы компилятор руки отрывал, за плохое использования
Alexander
если простыми словами, то речь о том, что в C нет лямбд аля C++?
Alexander
если простыми словами, то действительно полноценную ФП программу без ГЦ реализовать крайне сложно
Alexander
а вот критерии программы и доказательство этого утверждения я оставлю @lonokhov и @A64m_qb0 и пойду на самолёт
Alexander
а то я не хочу проторчать в аэропорте ещё дольше и хочу домой, даже если в интернете кто-то не прав (или прав)
Taras 🦀
Taras 🦀
смотрите какой стикерпак)
пригодится для любого языкосрача)
Cheese
Хаскеля там нет
Taras 🦀
и эрланг с эликсиром нет) отличненько !
Alexander
вот мы и узнали какие языки не говно
Alexander
блин, а гента в списке есть :(
Andrei
A64m
@astynax рассказывает, что сироты это расширение, которое включать нужно
A64m
может имеется в виду, что ворнинг надо отключать
Alexander
включите сирот пожалуйста
Aleksei (astynax)
Ну да, я про ворнинг хотел сказать. Это всё волнение
Alexander
просто скалисты дали тееб наркотики
Alexander
(если это про скалокаст)
A64m
они были расширением, кстати, но давно
A64m
@astynax нет, в рантайме бекпаковые модули не работают, они не первоклассные, как в окамле том же
A64m
(но это и в окамле экзотическая и относительно новая фича)
A64m
ну и в нью-билде ромб получить вроде можно (но на этом надо настаивать специально)
A64m
ошибка, в случае чего, естественно будет не рантаймовая, а какая-нибудь у вас тут тип ByteString, а надо ByteString
A64m
т.е. он все равно знает что типы из пакетов одной версии но с разными зависимостями - разные
A64m
@astynax таглесс файнл для эффектов используется массово в хаскеле, называется mtl
Дмитрий
Такой момент, вот у меня есть хаскельный Integer, можете посоветовать его аналог на си++, чтобы человек, которому я послал число длиной байт 20-30 мог с ним проделывать какие никакие арифметические операции?
Алексей
Должны быть какие-нибудь обёртки к gmp
Aragaer
есть собственно сам gmp
Aleksei (astynax)
Кабачок
А, что, какой подкаст?
A64m
непонятно только почему "на хаскеле не веб пишут"?
Alexander
до чего прогресс дошёл, можно троллить из самолета
Alexander
Kirill
Alexander
люфтганза