http://snowps.livejournal.com/ ([identity profile] snowps.livejournal.com) wrote in [personal profile] juan_gandhi 2015-06-02 07:46 pm (UTC)

Фраза про алгоритмы, опережающие рост производительности процессоров является обычной мантрой и не имеет никакого смысла, - примерно как "распространение Макдональдсов опережает потребности населения в еде", - and so what? Алгоритмы - это не семантика языка, а наоборот - семантика является одним из вспомогательных инструментов описания алгоритма. Когда программист оперирует абстракциями упорядоченого списка, мап-редьюса или иммутабельности, он должен понимать, что это абстракции для его удобства, в реальности всё работает совершенно иначе. Нет необходимости знать все тонкости - это и невозможно - но ни математика, ни конкретная парадигма программирования не является конечным алгоритмом, а только языком его описания. Оценку работы алгоритма можно проводить только на стыке абстракций и real world. Именно поэтому в HPC пока нигде нет функциональных языков в значимых масштабах - они неэффективны для высокопроизводительных систем. Это не означает, что они плохие - ряд задач можно и на скрипте Экселя решить при желании и это решение вполне может оказаться приемлемым, - но упорная фиксация на "разбор моих грехов оставьте до поры - вы оцените красоту игры" уже начинает несколько пугать.

Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting