Платов про Скалу
Aug. 27th, 2015 09:18 amScala — к ней я возвращался несколько раз и несколько раз бросал. Я прекрасно понимаю чем Scala привлекает неопытную молодежь (а она в основном и хочет Scala).
Привлекает несколькими вещами:
Ореолом элитности:
действительно прогресс в Scala делают умнейшие ребята, типа дураки на Scala не пишут, и если ты пишешь на Scala, то типа ты умный. Оп, ребята, программирование — это не учеба в университете, ты не будешь более “умным” программистом, чем сложнее заморочку ты решишь.
Сложностью:
наверно многие из Scala-фанатов и любителей не осознают, да и не способны сформулировать что их привлекает в сложности. Подсознательно кто-то думает, что сложность == мощь. Типа чем сложнее тем мощнее. Это естественно для обывателя (а я сейчас пишу в основном про класс программистов-обывателей). Тех кто еще толком ничего в своей жизни не напрограммировал (да и показать нечего). Естественная реакция взять какой нить инопланетный автомат с сотней рычагов и кнопок, как в кино — такая штука походу должна замочить всех вокруг, с их примитивным оружием. Беда в том что обывателю не сказали, о том что это типа-оружие сделано было не для того чтобы замочить всех вокруг, а для того чтобы там все как внутри элегантно и красиво двигалось/цеплялось, да по науке. Но вообще направление мысли верное: любому математику известно, что абсолютная сложность задачи не меняется, а вот решение может быть как простым так и сложным, простое решение сложной задачи (в одну строчку) может быть когда мы перекладываем сложность задачи на уже решенные вещи (теоремы). То есть очень сложную задачу можно просто решить переиспользуя сложные решения. В нашем случае компилятор должен брать на себя как можно больше сложности упрощая решение. Компилятор Scala безусловно сложен, но есть проблема — язык в котором эта сложность выражается. Пользоваться таким языком безумно сложно (я сейчас далеко не про тот кейс, когда Scala пользуют как “улучшенную” Java — эта в раздел ореол элитности).
http://habrahabr.ru/post/259841/
Привлекает несколькими вещами:
Ореолом элитности:
действительно прогресс в Scala делают умнейшие ребята, типа дураки на Scala не пишут, и если ты пишешь на Scala, то типа ты умный. Оп, ребята, программирование — это не учеба в университете, ты не будешь более “умным” программистом, чем сложнее заморочку ты решишь.
Сложностью:
наверно многие из Scala-фанатов и любителей не осознают, да и не способны сформулировать что их привлекает в сложности. Подсознательно кто-то думает, что сложность == мощь. Типа чем сложнее тем мощнее. Это естественно для обывателя (а я сейчас пишу в основном про класс программистов-обывателей). Тех кто еще толком ничего в своей жизни не напрограммировал (да и показать нечего). Естественная реакция взять какой нить инопланетный автомат с сотней рычагов и кнопок, как в кино — такая штука походу должна замочить всех вокруг, с их примитивным оружием. Беда в том что обывателю не сказали, о том что это типа-оружие сделано было не для того чтобы замочить всех вокруг, а для того чтобы там все как внутри элегантно и красиво двигалось/цеплялось, да по науке. Но вообще направление мысли верное: любому математику известно, что абсолютная сложность задачи не меняется, а вот решение может быть как простым так и сложным, простое решение сложной задачи (в одну строчку) может быть когда мы перекладываем сложность задачи на уже решенные вещи (теоремы). То есть очень сложную задачу можно просто решить переиспользуя сложные решения. В нашем случае компилятор должен брать на себя как можно больше сложности упрощая решение. Компилятор Scala безусловно сложен, но есть проблема — язык в котором эта сложность выражается. Пользоваться таким языком безумно сложно (я сейчас далеко не про тот кейс, когда Scala пользуют как “улучшенную” Java — эта в раздел ореол элитности).
http://habrahabr.ru/post/259841/