> достаточно ли этого для ведения промышленной разработки? До сих пор не
> сталкивался с использованием того-же Хаскеля за рамками студенческих
> проектов.
На вскидку — darcs, maxima (clisp).
И как раз в промышленной/финансовой отрасли — в разработке специализированного
ПО — функциональные языки и используются — будь то численные методы,
криптография, статистический анализ, системы управления и формальной
валидации.
Кстати, большым плюсом ФЯ-ов является сравнительная легкость формальной
аргументации (доказательств корректности), что нередко используются, к
примеру, в авиастроении и разработке микросхем.
> Сотни раз слышал, что подобные языки никогда не смогут использовать
> большинство программистов — они предполагают тяжёлую умственную работу и
> определённый склад ума.
У нас в университете все начинали с lisp'а и ML. Ни у кого особых трудностей
не возникало, многие впоследствии выбирали ФЯ-ки для своих проектов.
> можете назвать хотя бы один недостаток флеша применительно к его использованию на данном сайте?
Недостатки флеша вообще имеют место и в этом конкретном случае. В первую очередь - what we see is what you get. Почему я не могу без гемора отключить звук? Изменить шрифт? Изменить масштаб графика? Придираюсь, но флеш - это еще тот костыль.
Кстати, минусы проприетарщины как раз у флеша налицо, без фанатства и красноглазия. Удивлен, что с флешом на *никсах вы не знакомы. К примеру, данный сайт убивает мой ФФ нафик.
> то что вы назвали никак несвязано с флешом, а лишь с функциональностью сайта.
Так почему "этот сайт ДОЛЖЕН быть на флеше"?
> это вообще скорее промо-сайт, в том плане, что посмотрите у нас есть то-то и то-то и все спокойно.
В таком случае вы совершенно правы. Сливаю.
> ну и SVG и современный флеш никак вообще не связаны.
А чем, кстати, для пользователя SVG, JS & Ogg/Mkv не альтернатива флешу?
Флеш, к сожалению, не прошлый век (наблюдаем за развитием SVG).
Но речь не о достоинствах flash технологии, а ее недостатках, для некоторых очень существенных (наверняка вам известных, но все же - http://en.wikipedia.org/wiki/Criticism_of_Adobe_Flash).
К примеру, в Великобритании использование flash-а в государственных проектах (вернее, в общественном секторе) ограничивается ради пользователей с дефектами зрения.
Конкретно о сайте - если взять формальный функционал, без финтиклюшек, т.е. показания датчиков - то флеш тут совершенно боком. Лично мне было бы удобнее получать эти данные хоть бы в csv формате, а не елозить по экрану мышкой и танцевать с бубном вокруг глючного плагина adobe.
Добавлю, что эргономика в первую очередь - в "правильным стуке кнопок". И ее максимум - это IBM's Model M (если соседи не против). Ну, и das keyboard (вернее, cherry g80-3000 clicky) - на втором месте.
> Патентов на ПО не существует нигде кроме США и еще пары стран.
На ПО per se - нет. В частных случаях (в том числе mp3 [1]) - еще как.
Погуглим, кстати, "CeBIT 2008 mp3": "German police raided 51 booths at the CeBIT computing show this week because of breaches of audio compression (MP3) patents" [7.03.2008]
Ну вы и пик для slackware выбрали... Во-первых, это ж ужас. Во-вторых, болят глаза. В третьих, он уж совсем неофициальный. Вобщем, просьба сменить или убрать.
> Ну, английский на достаточном уровне знают не все.
Тогда попытаюсь таки привести несколько примеров
> применения динамического программирования
> где-нибудь кроме олимпиадного программирования
Из простых алгоритмов: задача о рюкзаке (ранце), кратчайшие пути в графе (Floyd,Warshall), перенос слов (Knuth), оптимальная последовательность умножения матриц, алгоритм Левенштейна, поиск лучших общих подпоследовательностей.
Надеюсь, понятно, что пракическое применение ДП, как и любой математической дисциплины, не исчерпывается какой-либо специфической областью. Чтоб назвать пару - сегодня ДП является широко используемым подходом к решению частных случаев NP-полных задач, а также имеет широкое применение в экономике и финансовых дисциплинах.
> Меня учили, что это именно так называется.
Решение задачи, описанное вами в статье (от условия до формулы) называется динамическим программированием. Имплементация, которую вы имеете ввиду здесь
> Попробуйте сами написать ее решение
к нему уже не относится, и в общем случае представляет из себя или простую итерацию (bottom up - если вы можете рассчитать базу рекурсии), или рекурсию с memoization (top down) [хвостовую рекурсию причислим к первой категории, хотя в ДП она практически неприменима].
> И не всегда динамика - это ленивые вычисления
Не совсем понял, но не думаю, что это важно.
> Да и я считаю, что программист должен сам уметь
> писать такие вещи, потому что странно иногда
> видеть программистов, которые могут писать
> большие проекты, знают кучу библиотек, а
> реализация, например, кучи или написание быстрой
> сортировки вызывает у них проблемы.
rdiff-backup
> сталкивался с использованием того-же Хаскеля за рамками студенческих
> проектов.
На вскидку — darcs, maxima (clisp).
И как раз в промышленной/финансовой отрасли — в разработке специализированного
ПО — функциональные языки и используются — будь то численные методы,
криптография, статистический анализ, системы управления и формальной
валидации.
Кстати, большым плюсом ФЯ-ов является сравнительная легкость формальной
аргументации (доказательств корректности), что нередко используются, к
примеру, в авиастроении и разработке микросхем.
> Сотни раз слышал, что подобные языки никогда не смогут использовать
> большинство программистов — они предполагают тяжёлую умственную работу и
> определённый склад ума.
У нас в университете все начинали с lisp'а и ML. Ни у кого особых трудностей
не возникало, многие впоследствии выбирали ФЯ-ки для своих проектов.
1. «__ name of _a/the_ town» или «town name»
2. «name of the town writes without artilcle» — это как?
3. «this is _an_ exception»
> потому как труЪ-красноглазики, способные писать софт, кодят в vim'е
Дожили, уже vi неудобен. А труъ-красноглазики до сих пор пользуют исключительно TECO. Ну, может еще ed - по выходным ;)
Njet. Это фича иксов [1,2]. А вот "в КДЕ это отключаю" - фича клиппера [3].
[1] http://www.jwz.org/doc/x-cut-and-paste.html
[2] vim :help x11-selection
[3] http://docs.kde.org/stable/en/kdebase-workspace/klipper/clipboard-modes.html
Недостатки флеша вообще имеют место и в этом конкретном случае. В первую очередь - what we see is what you get. Почему я не могу без гемора отключить звук? Изменить шрифт? Изменить масштаб графика? Придираюсь, но флеш - это еще тот костыль.
Кстати, минусы проприетарщины как раз у флеша налицо, без фанатства и красноглазия. Удивлен, что с флешом на *никсах вы не знакомы. К примеру, данный сайт убивает мой ФФ нафик.
> то что вы назвали никак несвязано с флешом, а лишь с функциональностью сайта.
Так почему "этот сайт ДОЛЖЕН быть на флеше"?
> это вообще скорее промо-сайт, в том плане, что посмотрите у нас есть то-то и то-то и все спокойно.
В таком случае вы совершенно правы. Сливаю.
> ну и SVG и современный флеш никак вообще не связаны.
А чем, кстати, для пользователя SVG, JS & Ogg/Mkv не альтернатива флешу?
Но речь не о достоинствах flash технологии, а ее недостатках, для некоторых очень существенных (наверняка вам известных, но все же - http://en.wikipedia.org/wiki/Criticism_of_Adobe_Flash).
К примеру, в Великобритании использование flash-а в государственных проектах (вернее, в общественном секторе) ограничивается ради пользователей с дефектами зрения.
Конкретно о сайте - если взять формальный функционал, без финтиклюшек, т.е. показания датчиков - то флеш тут совершенно боком. Лично мне было бы удобнее получать эти данные хоть бы в csv формате, а не елозить по экрану мышкой и танцевать с бубном вокруг глючного плагина adobe.
Советую поменять caps lock и ctrl в раскладке - работу с клавиатурой намного упрощает.
Для статистики - FF 2.0.0.14, freetype 2.3.4 (pango 1.18.4), DejaVu 2.17 - glyph отсутствует.
На ПО per se - нет. В частных случаях (в том числе mp3 [1]) - еще как.
Погуглим, кстати, "CeBIT 2008 mp3": "German police raided 51 booths at the CeBIT computing show this week because of breaches of audio compression (MP3) patents" [7.03.2008]
[1] http://v3.espacenet.com/textdoc?IDX=EP0287578&CY=ep&LG=de&DB=EPODOC
2) Это инструкция для сборки дистрибутива из исходников. Сегодня также может означать таким образом собранную систему.
Тогда попытаюсь таки привести несколько примеров
> применения динамического программирования
> где-нибудь кроме олимпиадного программирования
Из простых алгоритмов: задача о рюкзаке (ранце), кратчайшие пути в графе (Floyd,Warshall), перенос слов (Knuth), оптимальная последовательность умножения матриц, алгоритм Левенштейна, поиск лучших общих подпоследовательностей.
Надеюсь, понятно, что пракическое применение ДП, как и любой математической дисциплины, не исчерпывается какой-либо специфической областью. Чтоб назвать пару - сегодня ДП является широко используемым подходом к решению частных случаев NP-полных задач, а также имеет широкое применение в экономике и финансовых дисциплинах.
> Меня учили, что это именно так называется.
Решение задачи, описанное вами в статье (от условия до формулы) называется динамическим программированием. Имплементация, которую вы имеете ввиду здесь
> Попробуйте сами написать ее решение
к нему уже не относится, и в общем случае представляет из себя или простую итерацию (bottom up - если вы можете рассчитать базу рекурсии), или рекурсию с memoization (top down) [хвостовую рекурсию причислим к первой категории, хотя в ДП она практически неприменима].
> И не всегда динамика - это ленивые вычисления
Не совсем понял, но не думаю, что это важно.
> Да и я считаю, что программист должен сам уметь
> писать такие вещи, потому что странно иногда
> видеть программистов, которые могут писать
> большие проекты, знают кучу библиотек, а
> реализация, например, кучи или написание быстрой
> сортировки вызывает у них проблемы.
Каждому человеку нужно место в жизни :)