На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (16) « Первая ... 4 5 [6] 7 8 ...  15 16 все  ( Перейти к последнему сообщению )  
> Функциональное програмирование , Что за зверь такой
    Цитата applegame @
    Сирожа в очередной раз доказывает, что он и в этой области - полная некомпетентность. Причем глупая и упрямая некомпетентность.

    М-да, вся суть:
    Цитата settler @
    Лень вникать


    Цитата JoeUser @
    Хотите опровергнуть — …

    …вспомните чайник Рассела.

    Добавлено
    Цитата JoeUser @
    А где операционные системы

    Развлекайся
      Цитата applegame @
      Я слышал лет эдак 15 назад, еще в институте. Еще вопросы?

      Ага звиздун ты , большой , функциональным стилем называли процедурный,
      в каком то ты особом инстутуте учился , ;) Кроме личных наездов
      ничо сказать не можешь, все ясно разговор закончен , единсвенное что ты умеешь это вырывать куски фраз
      их контекста молодец иди возьми пирожок , ;)
        settler, не знаю, откуда ты берёшь сведения, но процедурное программирование всегда называли процедурным. А функциональным называли, то что и сейчас называют функциональным.
        Возможно, в той среде, где ты получал образование, было принято называть зелёное оранжевым, а чёрное белым. Чтобы в будущем студенты не тушевались, называя банальных террористов борцами с тиранией.
          Цитата applegame @
          Но всему свое место, чистые ФП языки вроде Хаскеля лично я считаю академической забавой. А в реальных приложениях надо использовать смешанный подход: функциональщина + императив. Зачем бросаться в крайности?

          Ну наконец то правильную вещь сказал, только ты забыл что в реальных приложениях
          что подход от задачи зависит,


          D_Key
          для паралельных вычислений используют map/reduce сколько там потоков сделает тебе скала ты не знаешь ,
          средств управления ими у тебя нет, на одной машине все равно больше 8ядер не бывет, я не говорю о MF.
          Я когда мэвен запускаю, выбрав 8 потоков разницу между 1 почти не чувствую , может две три секунды выигрыш,
          отсилы 10, это когда весь процесс бежит .5часа , В теории все прекрасно , в реальности пока этой самой много поточности не видно,

          Добавлено
          Цитата amk @
          Возможно, в той среде, где ты получал образование, было принято называть зелёное оранжевым, а чёрное белым. Чтобы в будущем студенты не тушевались, называя банальных террористов борцами с тиранией.

          Ну возможно английское образование какое то неправильное ,
          термин функциональное програмирование я слышу максимум год, может
          сюда цивилизация не доходит, ;) вторую часть не понял, скажи по-русски ;)
            Цитата JoeUser @
            Просто недавно пролетал такой "тренд", мол функциональщина - весьма древний подход. Даже древнее процедурного и ООП программирования. Логично, если древний (и главное эффективный) - софта должно быть немерянно, гораздо больше или минимум равному другим "подходам". А я пока слышу только о брендах типа Твитер. А где операционные системы, встраиваемые системы, СУБД, АРМы проектирования ... где все это??? Ничего не смущает?

            Не совсем точная постановка вопроса. В таких случаях всегда надо уточнять область, про которую идёт речь. Функциональные языки сейчас довольно прочно обосновались в задачах мат. моделирования. То есть если поездить по конференциям, где общаются математики, общаться они будут про хаскель и ни разу не C/C++. Причина очевидна - если перейти от обычных персоналок к суперкомпам, где количество процов идёт на сотни, языки, умеющие параллелить "на автомате" котируются гораздо выше тех, которые предлагают поуправлять потоками руками. А ещё и иммутабельность "по дефолту", приближенность к математической записи функций, возможность построения embedded-DSL почти любой сложности - и их популярность в научной и околонаучной среде становится понятной. Является ли мат. моделирование серьёзной областью разработки софта - вопрос открытый. Я бы сказал, что да.

            Добавлено
            Цитата settler @
            термин функциональное програмирование я слышу максимум год, может

            Просто оно вновь становится популярным.
              Цитата settler @
              Ну возможно английское образование какое то неправильное ,
              термин функциональное програмирование я слышу максимум год, может
              сюда цивилизация не доходит
              Ты либо на задворках цивилизации живёшь, куда знания с большими задержками доходят и сильно искажённые, либо привык за истину выдавать собственную интерпретацию, того, что услышал или увидел.
              Потому что в России по крайней мере последние 30 лет функциональным называют именно функциональное программирование. А процедурным всегда называли процедурным. Причём названия эти 30 лет фигурируют как в русскоязычной литературе (преимущественно переводной, хотя и отечественная есть), так и в доступной литературе на английском и немецком языках (другими не интересовался, так как всё равно толком не прочитаю).

              Добавлено
              Раньше, в эпоху компьютеров с малой памятью и одним процессором функциональное программирование не давало каких-либо преимуществ перед другими парадигмами. Более того, часто оно им уступало - рекурсия быстро исчерпывает память. Что касается отсутствия необходимости в синхронизации, то на однопроцессорных системах синхронизация стоит относительно дёшево. Достаточно не позволять процессору переключаться на другую задачу, когда не надо.
                Цитата amk @
                Раньше, в эпоху компьютеров с малой памятью и одним процессором функциональное программирование не давало каких-либо преимуществ перед другими парадигмами. Более того, часто оно им уступало - рекурсия быстро исчерпывает память. Что касается отсутствия необходимости в синхронизации, то на однопроцессорных системах синхронизация стоит относительно дёшево. Достаточно не позволять процессору переключаться на другую задачу, когда не надо.

                Зато в многопроцессорных и кластерных системах - даёт огромное преимущество. Ибо map-reduce-алгоритмы идеально ложатся на функциональную парадигму с ленивыми вычислениями.
                Сообщение отредактировано: Flex Ferrum -
                  Цитата Flex Ferrum @
                  Зато в многопроцессорных и кластерных системах - даёт огромное преимущество. Ибо map-reduce-алгоритмы идеально ложатся на функциональную парадигму с ленивыми вычислениями.

                  Что это такое? FP ты своими словами можешь определить без ссылок на википедию ,

                  Добавлено
                  Цитата amk @
                  Потому что в России по крайней мере последние 30 лет функциональным называют именно функциональное программирование.

                  C чего ему фигyрировать если его в практике не существовало, ну какой процент програмистов писал на лиспе
                  или прологе?

                  Добавлено
                  Цитата Flex Ferrum @
                  Зато в многопроцессорных и кластерных системах - даёт огромное преимущество. Ибо map-reduce-алгоритмы идеально ложатся на функциональную парадигму с ленивыми вычислениями.

                  Где ты в том же Хескеле может указать сколько потоков нужно определить?
                  Сколько потоков бегут на каждом ядре ?
                  5? 10? 100? Про мэвен еще раз расказать как это в реальности может не работать?
                    Цитата settler @
                    Ну возможно английское образование какое то неправильное

                    Да, явно не MIT.

                    Цитата amk @
                    Более того, часто оно им уступало - рекурсия быстро исчерпывает память.

                    Рекурсия тут особо не при чём, оптимизация хвостовой рекурсии была уже во времена SICP (86), а возможно уже в ML (77). Другое дело, что GC, замыкания — это всё тяжеловесней вызова процедуры в Си. А уж если говорить о ленивых языках (Miranda 85), то это и создание thunk'ов на каждый чих, и «особый путь» в организации IO.

                    ООП-языки (Simula 67, SmallTalk 80) тоже были для своего времени относительно тормозными (по сравнению со старым добрым Си) и не пошли в массы. Но потом появился С++ с достаточно эффективной ОО-моделью и ООП постепенно завоевало мир, про ФП и прочие подходы почти все забыли.
                    Сообщение отредактировано: korvin -
                      Цитата settler @
                      C чего ему фигyрировать если его в практике не существовало, ну какой процент програмистов писал на лиспе
                      или прологе?
                      Из тех, с кем я работал в начале перестройки, все писали, хотя бы чтобы попробовать. На обоих языках. Пролог не прижился. Но Пролог не функциональный язык. Да и на Лиспе часто пишут не в функциональном стиле.
                        Цитата settler @
                        Что это такое? FP ты своими словами можешь определить без ссылок на википедию ,

                        Своими словами? Ну... Не думаю, что это поможет, но тем не менее. ФП - это программирование с использованием функций и только функций. Программа состоит из определения функций и их вызова. При этом функция здесь - в математическом смысле. То есть используя аргументы возвращает результат, не меня состояния аргументов и внешней среды. Именно этим ФП принципиально отличается от процедурной парадигмы - в идеальной ФП-программе нет сущностей, которые меняют своё состояние. Это с точки зрения теории. На практике в ФП-языках могут быть элементы императивного программирования и могут быть заданы сущности с изменяемым состоянием (для взаимодействия со внешней средой, в основном), но такой код является исключением, а не практикой.


                        Цитата settler @
                        Где ты в том же Хескеле может указать сколько потоков нужно определить?

                        Многопоточность - не единственный способ организации параллельных вычислений. И не всегда самый эффективный. И вообще, ручная оптимизация сейчас - чаще всего удел гиков. Современные средства разработки справляются с этим лучше разработчика, особенно рядового разработчика.
                        Сообщение отредактировано: Flex Ferrum -
                          Цитата korvin @

                          Цитата JoeUser @
                          Хотите опровергнуть — …

                          …вспомните чайник Рассела.

                          Ты просто мастер интерпретаци! :lool: По поводу Чайника Рассела ... я всеж позволю себе выделить главное:
                          Цитата
                          «Ча́йник Ра́ссела» (англ. Russell's Teapot) — аналогия, впервые приведённая английским математиком и философом Бертраном Расселом (1872—1970) для опровержения идеи, что бремя доказательства ложности религиозных утверждений лежит на сомневающемся.

                          Таки я согласен я с Расселом, доказывать нужно истинность существования (а не отсутствия).

                          Цитата korvin @

                          Посмотрел. Если там то, что назвали - "операционные системы", то мой утюг - не меньше, чем нейрокомпьютер :lol:
                            Цитата JoeUser @
                            Посмотрел. Если там то, что назвали - "операционные системы", то мой утюг - не меньше, чем нейрокомпьютер
                            Вообще-то те операционные системы правильнее называть операционные среды. Обычно они предназначены для запуска и поддержки программ, написанных на единственном языке программирования. Что-то вроде усложнённого монитора ПК "Радио-86РК".

                            У тебя в утюге программируемый контроллер стоит?
                            Шутки шутками, а, например, даже в самом простом цифровом телевизоре операционка на порядок сложнее.
                              Цитата settler @
                              Цитата applegame @
                              Я слышал лет эдак 15 назад, еще в институте. Еще вопросы?

                              Ага звиздун ты , большой , функциональным стилем называли процедурный,
                              в каком то ты особом инстутуте учился ;)

                              Нет. Курс Функционального и логического программирования в ВУЗах РФ существует довольно давно.

                              Добавлено
                              Цитата settler @
                              D_Key
                              для паралельных вычислений используют map/reduce сколько там потоков сделает тебе скала ты не знаешь ,
                              средств управления ими у тебя нет

                              Тонкий тюнинг нужен очень редко. И он есть.
                              Цитата

                              , на одной машине все равно больше 8ядер не бывет

                              У меня на серверах по 24 ядра.
                              Цитата

                              Ну возможно английское образование какое то неправильное ,
                              термин функциональное програмирование я слышу максимум год, может
                              сюда цивилизация не доходит

                              Нет. Там тоже в курсах довольно давно изучают ФП.
                              В каком ВУЗе ты получил "английское образование"?
                                D_KEY, ты не забывай, что settler у нас computer science не обучен.
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (16) « Первая ... 4 5 [6] 7 8 ...  15 16 все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0489 ]   [ 15 queries used ]   [ Generated: 3.05.24, 17:51 GMT ]