Pull to refresh
12
0

Пользователь

Send message
<troll>
Ошибка 0: Использование Java вместо Scala
</troll>
Нисколько не умаляя Вашего опыта хочу заметить, что 29 лет назад реалии разработки ПО были иными, и требования к программам были иными, сложность ПО тоже многократно выросла.
Вы говорите о том, что программа приемлема, если она работает не дольше определённого времени и потребляет не больше определённых ресурсов — по этим критериям Scala приемлема. Но ценность Scala в первую очередь не в этом, а в том, что она даёт программисту больше различных средств кода, повышая модульность и поддерживаемость (и, косвенно, отказоустойчивость). Я думаю, что не ошибусь, если скажу, что предыдущие комментаторы имели ввиду то, что эти свойства в современном мире важнее, чем экономия каждого байта, с чем я полностью согласен.
Под JVM много стульев языков, дайте хотя-бы с колёсиками)
Generic-и стираются при компиляции, List во время выполнения это просто List
Вообще, в Java много «особенностей», к которым после более человечных языков привыкать не хочется
Когда пересаживают с нормального кресла на треногий табурет — возмущение естественно)
>>Какая разница, упадет в рантайме, или при компиляции?

O_o вы это серьёзно?
ох, я бы Java с C# в один ряд не ставил)
>>Тогда приходится тратить время на редактирование «спецификации» типов, которая вполне может пожить и в голове.

Каждому своё. По мне так языки с выведением типов в этом отношении не отличаются от динамических: если «не угадал с типами» переписывать приходится тоже только в одном месте
так зачем прототипировать без типов, когда можно сразу с типами?
kotlin'у до скалы ой как далеко
С рождения мыслить логически никто не способен.

Именно. Поэтому в школе этому учат.
В императивном программировании вводится только одна новая сущность: цикл.

Неправда. Циклы, переменные, ветвления — этого всего не было.

А как называется искажение, при котором человек не может рассуждать по аналогии?

Судя по моему не очень большому жизненному опыту, оно называется нормой.


Неспособность мыслить логически — норма? Ок.

И да: если функция от одного аргумента известна со школы, то нужно вводить лишь функции высших порядков.
А как называется искажение, при котором человек не может рассуждать по аналогии?)

Ну хорошо, можно показать
f(x) = x + 2
f(x, y) = x + y

можно даже пояснить, что первое — функция с одним аргументом, прибаляющая к аргументу 2, второе — функция с двумя аргументами, складывающая их. Это ни весть какое усложнение по сравнению с переменными :-)

P.S. можно долго разводить софистический спор о том, что очевидно, а что — нет.
Грудь — единственный интуитивный интерфейс, всему остальному приходится учиться.
f(x,y) = x + y
Школа закончилась, это универ, детка

Если серьёзно, то достаточно показать вышенаписаную функцию и становится всё понятно даже без объяснения
Я это прекрасно осознаю. В чистых функциональных языках (Haskell) функции зависят только от аргументов, если передав в f(x) 2 в качестве x я получу 20, то эта функция всегда вернёт 20 и только 20. Более того, некоторые императивные языки (например, D) могут дать аналогичные гарантии (модификатор pure)
В функциональном программировании функция представляет собой ровно то же самое)
Тот, кто учился хотя-бы в 7-м классе не может не знать, что такое функция)
Только надо в таком случае ему сразу показать, что можно или циклом пахать по этому списку или массиву, или map'ом функцию применить, а не культивировать миф «функциональщина — сложно».

И да, я всегда ставлю вопрос по-другому: «нужна ли в конкретном приложении императивщина»

Information

Rating
Does not participate
Location
Сочи, Краснодарский край, Россия
Registered
Activity