Java и традиционные языки: производительность программиста
Результаты интересные, конечно.
Только не Java vs Pascal и уж тем более не Java vs Python и Java vs Objective Caml.
Очевидно, что разницы между собственно языками в данной задаче скорее нет, чем есть.
Зато более чем видна разница между программистами.
Пусть задача непоказательная изначально, пусть в программах больше половины - вынужденный код.
И тем не менее - есть и стандартные функционально-/декларативно- рекурсивные решения, и зубодробильные императивные драконы с - ух, как! - попытками оптимизации.
Подвиг 1984-1987 годов Tom DeMarco with Tim Lister ("Software Development: State of the Art vs State of the Practice") повторить не удалось, но разлёт - налицо.
Сразу вспоминается
vitaly_b и Движок За Миллион (tm).
Страшно.
Результаты интересные, конечно.
Только не Java vs Pascal и уж тем более не Java vs Python и Java vs Objective Caml.
Очевидно, что разницы между собственно языками в данной задаче скорее нет, чем есть.
Зато более чем видна разница между программистами.
Пусть задача непоказательная изначально, пусть в программах больше половины - вынужденный код.
И тем не менее - есть и стандартные функционально-/декларативно- рекурсивные решения, и зубодробильные императивные драконы с - ух, как! - попытками оптимизации.
Подвиг 1984-1987 годов Tom DeMarco with Tim Lister ("Software Development: State of the Art vs State of the Practice") повторить не удалось, но разлёт - налицо.
Сразу вспоминается
Страшно.
no subject
Date: May. 9th, 2006 13:07 (UTC)Мне прёт от реакции народа (и даже в этой ветке ;) ).
И от того, насколько ж чёрт возьми разнятся мозги.
Я ж сделал ссылку на TDM+TL, неужто не очевидно, что меня заинтересовало?
А вариант Пушыстого - это самый мощный вариант, как и варианты на Python и Objective Caml.
У него есть маааленькая проблемка (скорость), но именно его я ждал от кандидатов как наиболее простого и буквального, когда давал на собеседовании именно этот алгоритмический вопрос.
no subject
Date: May. 9th, 2006 14:01 (UTC)По первых строках письма... вобщем я пока ещё в единственм числе.
Оторвавшись от студии, я действительно не подумал о чём это ты ;) Я просто прочитал исходный топик о сравнении язков и выразил своё имхо именно на эту тему.
Да, а о чём ты, кстати? Постой, попробую догадаться.
Неужели ты о подходе к решению проблем? К ограниченности в выборе исполниетелями или о стоимости последствий таких решений. Может быть о непонимании того, что язык лишь узкий ящик в который приходться втискивать свои идеи, но не то что создаёт тру вэй решения задачи? Что опять не угадал? Нда, вот блин какой я недогадливый ;) ничего, что бы не было бы известно и банально, придумать не могу. ;)) Но, последняя попытка, может быть просто для фану?
>Я ж сделал ссылку на TDM+TL, неужто не очевидно, что меня заинтересовало?
Не поверишь ;) я это не читал.
З.Ы.
Никогда не мог понять, в чём сложность рекурсии и композиции чистых функций. Это же лишь вариант абстракции. Способ формализации задачи.
no subject
Date: May. 9th, 2006 14:36 (UTC)Мне просто немножко страшно, нормальное такое, естественное состояние.
Вроде и так все знают, что программисты - разные.
И оценивать их одной метрикой - неправильно и нельзя.
Но когда от этого данного конкретного программиста в конечном итоге будет зависеть качество конечного продукта (по крупицам - здесь - память выделил лишний раз, здесь - ненужная инверсия матрицы, здесь - код чутка неэффективен, здесь - кэш затрэшил и т.п.), когда в реальных игровых приложениях игра будет CPU bound без пиков (т.е. все тормоза аккуратно распределены по приложению) - будет уже не страшно, потому что слишком поздно.
> Никогда не мог понять, в чём сложность рекурсии и композиции чистых функций.
Вот и я этого не могу понять.
И при чём тут прокрустово ложе языка - тоже.
И почему на простую задачку пишется треш в N строк - тоже...
P.S. http://portal.acm.org/citation.cfm?id=74625&dl=ACM&coll=portal
no subject
Date: May. 9th, 2006 15:50 (UTC)Э-э-э. Никогда бы не подумал, что ты хочешь что-то подобно сделать.
Нда, мне постоянно говорят что у меня шутки злые ;) Но тут ничего не поделаешь, какие есть.
>Но когда от этого данного конкретного программиста в конечном итоге будет зависеть качество конечного продукта...
Как там Морфиус говорил? - Добро пожаловать в реальный мир...
Матрица имеет нас, Руслан. ;) Тем интереснее становиться жить. Организовать эту разношёрстую компанию ЛыцАрей клавиатуры и направить по нужному тебе путь, задача посерёзнее чем забабахать крутой алгоритм.