Anatoly Levenchuk (ailev) wrote,
Anatoly Levenchuk
ailev

Categories:

Пост-объект-ориентированная Julia

Крис Партридж говорил, что современных программистов легче убить, чем переучить в другие парадигмы -- например, в них в ВУЗе намертво вколочен аристотелевский онтологический подход с объектами и атрибутами, а факт-ориентированность для них интеллектуально недоступна. Julia тоже плохо понимается современными ООП-программистами, ибо она не объект-ориентирована: в ней используется multiple dispatch. Я тут подобрал несколько ссылок, где можно почитать подробней о пост-объект-ориентированном стиле программирования в Julia:

-- две большие фичи Julia: multiple dispatch (который вместо ООП) и средства интроспекции -- http://ailev.livejournal.com/1218155.html (и там довольно много дополнительных ссылок на разъяснения).
-- The Design Impact of Multiple Dispatch As the core paradigm of Julia (Stefan Karpinski): http://nbviewer.jupyter.org/gist/StefanKarpinski/b8fe9dbb36c1427b9f22 -- базовый пример.
-- Type-Dispatch Design: Post Object-Oriented Programming for Julia (Сhristopher Rackauckas): http://www.stochasticlifestyle.com/type-dispatch-design-post-object-oriented-programming-julia/
-- Modular Algorithms for Scientific Computing in Julia (Christopher Rackauckas): http://www.stochasticlifestyle.com/modular-algorithms-scientific-computing-julia/
-- 7 Julia Gotchas and How to Handle Them (Christopher Rackauckas): http://www.stochasticlifestyle.com/7-julia-gotchas-handle/ (о 7 типовых ошибках, которые делают начинающие работать на Julia)
-- DSL в Julia http://ailev.livejournal.com/1366789.html (и там ссылка на общий паттерн метапрограммирования для DSL в https://julialang.org/blog/2017/08/dsl).

За всё нужно платить. Julia -- более трудный в изучении язык, чем Python, R или Matlab. И материалов для изучения особенностей Julia пока не так много. Хотя на Julia можно достичь бОльшего, чем на Python, R или Matlab, платить за это нужно дополнительным временем обучения, дополнительной ломкой мозга. Это скрипка Энгельбарта (http://ailev.livejournal.com/1158826.html), да ещё и специально заточенная на вычислительную математику.

UPDATE: обсуждение в фейсбуке -- https://www.facebook.com/ailevenchuk/posts/10211017119477982
Subscribe

  • Понятие стратегирования

    Продолжаю девятую переписку "Методологии". По традиции привожу первый переписанный (по факту -- вновь написанный, но всё-таки я переписал тут кусочек…

  • Обсуждения в ШСМ, сентябрь 2024

    В методсовете идёт обсуждение, какова школа в восприятии ширнармасс и насколько широки эти народные массы. После того, как выяснилось, что у нас "не…

  • lytdybr

    Съездил на танцевальный фестиваль в Витязево под Анапой (был 1-8 сентября 2024), позанимался там сальсой и блюзом (в варианте slow drag), рассказал…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 34 comments

  • Понятие стратегирования

    Продолжаю девятую переписку "Методологии". По традиции привожу первый переписанный (по факту -- вновь написанный, но всё-таки я переписал тут кусочек…

  • Обсуждения в ШСМ, сентябрь 2024

    В методсовете идёт обсуждение, какова школа в восприятии ширнармасс и насколько широки эти народные массы. После того, как выяснилось, что у нас "не…

  • lytdybr

    Съездил на танцевальный фестиваль в Витязево под Анапой (был 1-8 сентября 2024), позанимался там сальсой и блюзом (в варианте slow drag), рассказал…