Автор Тема: ещё про цикл дейкстры  (Прочитано 96253 раз)

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #105 : Август 07, 2012, 03:46:20 pm »
У тех, кто всё-таки не удовлетворен "технологичностью" программирования в малом, есть желание экспериментировать с новыми схемами-методами, в поисках большей регулярности кода (какую дало для задач парсинга и управляющих алгоритмов применение конечных автоматов).
Есть люди, которым улучшение "программирования в малом" не интересно, т.к. они считают, что всё можно парировать на уровне организации процессов (юнит-тестирование и проч.), либо, например, применением ФП.
По моему, ФП как раз и решает проблемы программирования в малом. У ФП есть конечно потенциал и для большого, но обычно демонстрируется именно программирование в малом.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

DIzer

  • Гость
Re: ещё про цикл дейкстры
« Ответ #106 : Август 07, 2012, 03:47:51 pm »
.
Ну а Dizer-у простительны любые страсти, человек нашёл себе миссию и смысл жизни, защитить мир от оберонщиков, пускай защищает :)
   :D Спасибо.

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #107 : Август 07, 2012, 03:50:34 pm »
По моему, ФП как раз и решает проблемы программирования в малом. У ФП есть конечно потенциал и для большого, но обычно демонстрируется именно программирование в малом.

Цена маскировки понятия последовательности действий, понятия "поведение системы", вообще состояния - слишком большая цена, с моей точки зрения. Кроме того, не видно пути, на котором рантайм и компилятор языков типа Haskell-а мог бы стать таким же простым, как Обероновский. Пишется на Си, баги, патчи, протечки памяти - вон даже в журнале ФП Льва Валкина народ пишет об этих проблемах при практическом использовании.

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #108 : Август 07, 2012, 03:59:25 pm »
а если не выходит дешевой демагогией

Вы можете формально упрекать в демагогии, потому что многое приходится высказывать из пока спорного, что кажется неправдопобным мейнстримщику.
Но, если положа руку на сердце, ну не вижу я никакого другого варианта в ИТ (кроме узких, специфических), который позволил бы что-то делать в этой сфере, "наклав" на зависимость от больших корпораций, либо больших сообществ. Можете считать меня утопистом, "маньяком натурального хозяйства", но я пытаюсь нащупать путь, на котором люди могут быстро догнать и сделать что-то свое против, казалось бы, необъятных систем.

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #109 : Август 07, 2012, 04:02:01 pm »
По моему, ФП как раз и решает проблемы программирования в малом. У ФП есть конечно потенциал и для большого, но обычно демонстрируется именно программирование в малом.

Цена маскировки понятия последовательности действий, понятия "поведение системы", вообще состояния - слишком большая цена, с моей точки зрения. Кроме того, не видно пути, на котором рантайм и компилятор языков типа Haskell-а мог бы стать таким же простым, как Обероновский. Пишется на Си, баги, патчи, протечки памяти - вон даже в журнале ФП Льва Валкина народ пишет об этих проблемах при практическом использовании.
Можно ссылку на таковые протечки памяти которые именно из за сишной сущности рантайма хаскеля вылезают?

Мне в плане хаскелля все равно насколько сложен или прост рантайм, мне важна его эффективность и надежность, а к этому можно прийти минуя этап простоты, другое дело что на это потребуется больше усилий. Но усилий не моих :-)

В общем, как по мне, цена вполне адекватна. Да и все там видно в принципе (состояние системы и так далее) после того как с полгодика на этом деле попишешь более-менее активно.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #110 : Август 07, 2012, 04:30:10 pm »
Нет, соврал, не в журнале ФП. Был пример разработки модели процессора, но в ФП как раз у них получилось на Haskell, а где-то в блогах разработчики подобного проекта жаловались, что на Haskell текла память, из-за чего они перешли на какой-то другой функциональный язык.

Ну а из-за чего могут быть баги с управлением памятью, как не из-за сишного рантайма?

А как быть с автоматическим управлением памятью, которое теперь начинает упираться в большой размер ОЗУ? Вон в Java новое поветрие - out-of-heap-memory (разработчики "Одноклассников" стали использовать, так как при большом ОЗУ и мелких объектах огромные тормоза). А уж ФП-рантайм ещё больше "автоматический", чем любой императивный.

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #111 : Август 07, 2012, 04:33:50 pm »
Нет, соврал, не в журнале ФП. Был пример разработки модели процессора, но в ФП как раз у них получилось на Haskell, а где-то в блогах разработчики подобного проекта жаловались, что на Haskell текла память, из-за чего они перешли на какой-то другой функциональный язык.

Ну а из-за чего могут быть баги с управлением памятью, как не из-за сишного рантайма?
Это скорее всего блог Зефирова (thesz.livejournal.com), память текла не из за сишного рантайма, а из за ленивости haskell'я, в принципе подобным образом может и java течь и оберон (если у него есть сборщик мусора). Перешли скорее всего на ocaml - это язык энергичный и таких "утечек по умолчанию" там не будет. То есть это утечки логические на прикладном уровне, сборщиком не собираемые в принципе.

Короче, нужно уже заканчивать все грехи на Си списывать :-) Он не так страшен как кажется.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #112 : Август 07, 2012, 04:37:02 pm »
Нет, соврал, не в журнале ФП. Был пример разработки модели процессора, но в ФП как раз у них получилось на Haskell, а где-то в блогах разработчики подобного проекта жаловались, что на Haskell текла память, из-за чего они перешли на какой-то другой функциональный язык.

Ну а из-за чего могут быть баги с управлением памятью, как не из-за сишного рантайма?
Это скорее всего блог Зефирова (thesz.livejournal.com), память текла не из за сишного рантайма, а из за ленивости haskell'я, в принципе подобным образом может и java течь и оберон (если у него есть сборщик мусора). Перешли скорее всего на ocaml - это язык энергичный и таких "утечек по умолчанию" там не будет. То есть это утечки логические на прикладном уровне, сборщиком не собираемые в принципе.

Короче, нужно уже заканчивать все грехи на Си списывать :-) Он не так страшен как кажется.

В общем вот ссылка на разъяснение ситуации от самого автора этого самого эмулятора процессора: http://thesz.livejournal.com/904938.html?thread=6950634
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #113 : Август 07, 2012, 04:39:20 pm »
А как быть с автоматическим управлением памятью, которое теперь начинает упираться в большой размер ОЗУ? Вон в Java новое поветрие - out-of-heap-memory (разработчики "Одноклассников" стали использовать, так как при большом ОЗУ и мелких объектах огромные тормоза). А уж ФП-рантайм ещё больше "автоматический", чем любой императивный.
Он более автоматический в малом. То есть всякие fusion'ы благодаря которым не создаются промежуточные структуры данных и вычисления не производятся и так далее. При масштабировании это все к проблемам не приводит, в отличае от сборщиков мусора в ИЯ (огромное общее адресное пространство).
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #114 : Август 07, 2012, 04:46:30 pm »
Ну а из-за чего могут быть баги с управлением памятью, как не из-за сишного рантайма?
Кстати, я точно помню на этот вопрос именно в контексте этого случая (эмулятор процессора от Зефирова) и именно тебе несколько лет назад на оберонкоре отвечал Geniepro, и отвечал именно про ленивость :-) Подобное знание видимо плохо усваивается, и заменяется снова "знанием" аля "это все сишный рантайм виноват!". Я не в плане критики, я в том плане, что обрати на это внимание, звоночек то не хороший, эдак и мозгом закостенеть не долго.
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"

alexus

  • Гость
Re: ещё про цикл дейкстры
« Ответ #115 : Август 07, 2012, 05:00:06 pm »
а если не выходит дешевой демагогией

Вы можете формально упрекать в демагогии, потому что многое приходится высказывать из пока спорного, что кажется неправдопобным мейнстримщику.
Природа не терпит не только пустоты, но и заумности тоже. Первое она заполняет, второе отрезает.

Но, если положа руку на сердце, ну не вижу я никакого другого варианта в ИТ (кроме узких, специфических), который позволил бы что-то делать в этой сфере, "наклав" на зависимость от больших корпораций, либо больших сообществ. Можете считать меня утопистом, "маньяком натурального хозяйства", но я пытаюсь нащупать путь, на котором люди могут быстро догнать и сделать что-то свое против, казалось бы, необъятных систем.
В общем, серебряных пуль искатели и уловители со всех стран объединяйтесь! :)
Сегодня бороться с большими софтверными корпорациями - это несколько странно... Дело не в том, что они всасывают в себя "мозги", а в том, как они это делают. Возникла у человека идея, хорошая продуктивная идея, которая требует выхода, реализации, то бишь. Что делает такой человек? Он начинает искать сторонников, и находит в виде... венчурных компаний, которые внимательно его выслушивают, дают денег и помогают организовать стартап. Реализовали идею, и... можете свой продукт продавать, а можете с потрохами продаться "большой корпорации". Первое долго, рискованно и хлопотно, второе быстро и гарантированно выгодно безо всяких хлопот.
Что касается краткости и эффективности пути, то он начинается с хорошей модели, качественного проектирования и, наконец, кодирования. А поскольку на первых двух этапах напряг, то о кодировании лучше вообще не вспоминать... всуе. Остаётся любимое занятие врямяубийцев - искать серебряную пулю.

Geniepro

  • Hero Member
  • *****
  • Сообщений: 1955
  • Знайте- истина в том, что повторено трижды подряд!
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #116 : Август 07, 2012, 05:04:19 pm »
Цена маскировки понятия последовательности действий, понятия "поведение системы", вообще состояния - слишком большая цена, с моей точки зрения. Кроме того, не видно пути, на котором рантайм и компилятор языков типа Haskell-а мог бы стать таким же простым, как Обероновский.
А при чём здесь именно ФП???
ФП -- это не только Хаскелл. Тот же Caml Light, например, очень прост и ложится на ассемблер не хуже сей.
Не говоря уж о Scheme -- куда уж проще-то? Да у ваших оберонов жутчайший "синтаксический оверхед" по сравнению со схемой...

Пишется на Си, баги, патчи, протечки памяти - вон даже в журнале ФП Льва Валкина народ пишет об этих проблемах при практическом использовании.
Любой сложный язык сейчас именно так и реализуется -- на Си, с багами, патчами, протечками памяти и чего угодно -- это вовсе никак не связано с ФП, так что не надо клеветать-то...
to iterate is human, to recurse, divine

Салат «рекурсия»: помидоры, огурцы, салат…

DIzer

  • Гость
Re: ещё про цикл дейкстры
« Ответ #117 : Август 07, 2012, 05:34:35 pm »
а если не выходит дешевой демагогией

Вы можете формально упрекать в демагогии, потому что многое приходится высказывать из пока спорного, что кажется неправдопобным мейнстримщику.
Природа не терпит не только пустоты, но и заумности тоже. Первое она заполняет, второе отрезает.
  :( C каких это пор демагогия стала синонимом пустоты и /или заумности. По поводу последней и "общности", а также "серебрянных пуль" - типичная точка зрения представителей инженерных вузов, классический пример уродства - "правило Лопиталя" , как "заучили" на первом курсе так и всю свою жизнь применяют по любому поводу и без оного...

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #118 : Август 10, 2012, 10:05:01 am »
Кстати, я точно помню на этот вопрос именно в контексте этого случая (эмулятор процессора от Зефирова) и именно тебе несколько лет назад на оберонкоре отвечал Geniepro, и отвечал именно про ленивость :-) Подобное знание видимо плохо усваивается, и заменяется снова "знанием" аля "это все сишный рантайм виноват!".

Ну, я понял это пояснение так, что из-за ленивости логика сборки мусора сложнее, и рантайм оказался неспособен правильно отработать.

Илья Ермаков

  • Sr. Member
  • ****
  • Сообщений: 493
    • Просмотр профиля
Re: ещё про цикл дейкстры
« Ответ #119 : Август 10, 2012, 10:10:08 am »
Любой сложный язык сейчас именно так и реализуется -- на Си, с багами, патчами, протечками памяти и чего угодно -- это вовсе никак не связано с ФП, так что не надо клеветать-то...

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