Зигохистоморфный 
    
    
        
        
        
        в жс классы
    
 
    
    Евгений 
    
    
        
        
        
        Может ты с метаобъектами путаешь?
    
 
    
    доня. 
    
    
        
        
        
        class Foo {
          constructor() {
            console.log("wow! classes in js");
          }
        }
    
 
    
    Зигохистоморфный 
    
    
        
        
        
        Ну и extends тоже есть и это уже не просто сахар над прототайп
    
 
    
    Дима 
    
    
 
    
    Дима 
    
    
        
        
        
        Существует лишь крайне узкий ряд кейсов в которых можно отличить сущность созданную через прототипы от сущности созданной через классы. И те можно убрать через Proxy или другие приёмы
        Просто это долго и неудобно, так как к прототипному наследованию относятся все проблемы наследования обычного
    
 
    
    Евгений 
    
    
        
        
        
        Как нету IDE-срача, так тишина. Так что сделаю вброс не менее классический, но похитрее.
        Вопрос промышленным хаскель-программистам: @qnikst, @voidlizard, @weonn, вы вообще видете продакшон профит от call-by-need? Или вы юзаете хаскель из-за разросшейся инфраструктуры, являющейся побочным эффектом ленивых вычислений: развитой системы типов, тайп-классов монад-трансформеров и прочего; а лень вызывает у вас только грусть, ощущение пустоты и постоянную борьбу с граф-редукцией?
    
 
    
    Alexander 
    
    
        
        
        
        а профита от call-by-need не видно пока он под капотом, но об этом обычно не думаешь, чтобы его увидеть можно взять идрис и начать пытаться писать в привычном стиле
    
 
    
    Alexander 
    
    
        
        
        
        т.к. чаще возникает лень - грусть, а про то что это хорошо, только в дискуссиях вроде "какого черта это работает за O(1) по памяти, хотя причин не видно"
    
 
    
    Влод 
    
    
        
        
        
        а что возникнет в идрисе?
    
 
    
    Влод 
    
    
        
        
        
        ну то есть где проявление привычного стиля?
    
 
    
    Валерий 
    
    
        
        
        
        Емнип, он активный
    
 
    
    Влод 
    
    
        
        
        
        кстати интересно стало можно ли там сделать какой-нибудь 2связный или кольцевой список так же через let где ссылки друг на друга ссылаются
    
 
    
    Влод 
    
    
        
        
        
        энергичный, да
    
 
    
    Валерий 
    
    
        
        
        
        Ну вот тут
        То есть без вызовов по надобности
    
 
    
    Alexander 
    
    
        
        
        
        @vlastachu взаимнорекурсивные зависимости и бесконечное вычисление, O(N^2) вмето O(N) часто
    
 
    
    Alexander 
    
    
        
        
        
        но в идрисе пофиг на нём же для интереса только писать
    
 
    
    Нурлан 
    
    
 
    
    Alexander 
    
    
        
        
        
        interface в терминах java это набор методов (публичных до следующей версии java), которые класс реализующий интерфейс должен реализовать
    
 
    
    Alexander 
    
    
        
        
        
        т.о. можно безопасно реализовывать аналог множества родительских объектов
    
 
    
    Alexander 
    
    
        
        
        
        ну и вообще нету многих проблем связанных с логичностью иерархий классов
    
 
    
    Евгений 
    
    
 
    
    Alexander 
    
    
        
        
        
        чем-то напоминают class в haskell
    
 
    
    Нурлан 
    
    
        
        
        
        Тоже так показалось.
    
 
    
    Ilya 
    
    
 
    
    Ilya 
    
    
        
        
        
        Где про strict
    
 
    
    Alexander 
    
    
        
        
        
        @elemir90 не видел сборника, нарывался когда аппликатив для парсера писал и т.п. (но мои познания идриса примерно на курсе Брагилевского)
    
 
    
    Alexander 
    
    
        
        
        
        я немного сомневаюсь, что там будет исчерпывающий сборник
    
 
    
    Alexander 
    
    
        
        
        
        но мало ли
    
 
    
    Alexander 
    
    
        
        
        
        ну и в том же курсе было видно много мест, где ассимптотика ломается
    
 
    
    Ilya 
    
    
        
        
        
        ещё я читал статью от ibm про все виды фолдов, тоже понравилось
    
 
    
    Ilya 
    
    
        
        
        
        Но там скорее для новичков
    
 
    
    Влод 
    
    
 
    
    Alex 
    
    
        
        
        
        ?
    
 
    
    Влод 
    
    
        
        
        
        ну тип контекст был про промшленный хаскель (хотя ушло уже) и тут ссылка про проблемы с recursion schemes
    
 
    
    Зигохистоморфный 
    
    
        
        
        
        А какие в них проблемы? Иногда они быстрее обычной рекурсии + можно фьюзить алгебры
    
 
    
    Зигохистоморфный 
    
    
        
        
        
        https://codisec.com/binary-data-visualization/
    
 
    
    Dmitry 
    
    
        
        
        
        возвращаясь к вопросу о ленивости в продакшене - ленивость это не более чем данность языка. в отличие от вещей, которые являются однозначными изъянами в прочих языках -  отсутствие какой-либо защиты, типизации или модулей в Си,  тяжелая VM  в некоем другом языке - ленивость не только вредна, но и полезна. непреодолеваемых проблем она не создаёт
    
 
    
    Andrey 
    
    
        
        
        
        Если хочестя энергичности, можно взять Окамл или другой из МЛ-семейства, хотя Фшарп потащит за собой НЕТ. Но там будут свои недостатки даже по сравнению с сабжем.
    
 
    
    Влод 
    
    
 
    
    Dmitry 
    
    
        
        
        
        (n-1) битная арифметика, отсутствие SMP, странноватый синтаксис и местами семантика, сомнительная живость ждут вас
    
 
    
    Andrey 
    
    
        
        
        
        Ну началось... Я же сказал, что есть недостатки. А какой еще энергичный ФП-язык можно посоветовать на замену сабжу? Я то конечно Схему и прочие Лиспы могу назвать, но вы же совсем заклюете за динамику :)
    
 
    
    Alexander 
    
    
        
        
        
        я слышал что rust энергичный
    
 
    
    Dmitry 
    
    
        
        
        
        никакой, в том-то и дело
    
 
    
    Dmitry 
    
    
        
        
        
        хаскелл с расставленными аннотациями
    
 
    
    Dmitry 
    
    
        
        
        
        rust энергичный, но фунциональный ли он?
    
 
    
    Andrey 
    
    
        
        
        
        Раст имхо немного про другое, хотя в качестве варианта пойдет
    
 
    
    Dmitry 
    
    
        
        
        
        Тут еще Swift был,  кстати
    
 
    
    Alexander 
    
    
        
        
        
        @voidlizard нет
    
 
    
    Dmitry 
    
    
        
        
        
        не знаю, насколько жив, но вроде кто-то на нем что-то где-то делает
    
 
    
    Alexander 
    
    
        
        
        
        не очень функциональный, хотя какое-то приближение к человеческому миру есть
    
 
    
    Dmitry 
    
    
        
        
        
        еще интересно, как дела у F#
    
 
    
    Влод 
    
    
        
        
        
        ну ребят, давайте если перечислять языки то с НКТ
    
 
    
    Igor 
    
    
        
                    
                        
                            
                            еще интересно, как дела у F#
                        
                    
                
        
        
        Хорошо, у нас даже чатик есть (см bio).
        Сейчас ради прикола делаю приложение на F# + ReactNative (он же еще в js компилируется) - пока заходит.
    
 
 
    
    Dmitry 
    
    
        
        
        
        ok, а то всякие слухи доносились
    
 
    
    Влод 
    
    
        
        
        
        сейчас посмотрел вроде и в миранде не было тайпклассов
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        PureScript же энергичный "как Хаскель". Если таргетиться в JS не хочется, то можно в Си :)
    
 
    
    Dmitry 
    
    
        
        
        
        я вот думал написать для пурскрипта бэкенд куда-нибудь, но меня остановило отсутствие 1) спецификации 2) понимания перспектив языка
    
 
    
    Dmitry 
    
    
        
        
        
        ну т.е  куда-нибудь - это на всё тот же мипс
    
 
    
    Dmitry 
    
    
        
        
        
        @astynax а там есть сишный таргет?
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        Пурскрипт на бэке используют и вполне успешно.
    
 
    
    Dmitry 
    
    
        
        
        
        ссылок можно каких-нибудь?
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        Синшный таргет есть и уже давно. Он конечно не основной, но вроде работает. Другое дело, что PureScript, это hosted язык, паразитирующий на чужой ВМ
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        https://github.com/andyarvanitis/purescript-native
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        А JS-бэк на вот этом всём делают: https://github.com/purescript-node
    
 
    
    Dmitry 
    
    
        
        
        
        ну почему сиплюсплюс в качестве бэкенда... ааа
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        Потому что авторы его знают :)
    
 
    
    Leonid 🦇 
    
    
        
        
        
        Чтоб без libffi
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        Возможно.
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        Чтобы хоть какие-то либы поюзать
    
 
    
    Leonid 🦇 
    
    
        
        
        
        Пурсе остро не хватате оптимизаций
    
 
    
    Dmitry 
    
    
        
        
        
        для ФЯ оптимизации должны быть
    
 
    
    Dmitry 
    
    
        
        
        
        иначе непрактично
    
 
    
    Leonid 🦇 
    
    
        
        
        
        Тупо инлайнить $ не умеет
    
 
    
    Leonid 🦇 
    
    
        
        
        
        Но движуха идет
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        Расчитывают на JIT в целевой виртуалке :)
    
 
    
    Дима 
    
    
        
        
        
        И не безосновательно
    
 
    
    Dmitry 
    
    
        
        
        
        виртуалка - это V8 что ли?
    
 
    
    Aleksei (astynax) 
    
    
        
        
        
        Браузер