Re[10]: Жизнь без IDE
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.10.09 10:31
Оценка:
Здравствуйте, metaprogrammer, Вы писали:

VD>>Я уже понял, что монстров, знающих все детали проекта и используемых в нем библиотек, попросту нет!


M> А кому это надо? Зачем голову чушью забивать?


Дык если этих "монстров" не развести на разговор, то создается впечатление, что они вбивают код прямо в командйной строке (включив перенаправление в файл).

M> Я правильно понял, что до где-то года 96-го все поголовно решали слишком примитивные задачи, поскольку приличных IDE просто не было (ой, мне сейчас опять про VisualAge начнут напоминать...)?


Ну, почему только про VisualAge. Смолток был в 80-ом и до IBM-а.
А задачи, действительно реашалось более примитивные. То что тогда казалось подвигом, сейчас обычное дело.
Конечно не только IDE иземенили положение дел, но и они в том числе.

VD>>Вера в REPL тоже забавит.


M> Это не вера, это практический опыт.


Практический опыт бывает разный. То что для того же Хаскеля не могут 10 лет написать IDE — это тоже практический опыт.

M> А вот не фиг раздельную компиляцию разводить. REPL очень удобен для быстрой интроспекции поведения непонятных кусков сколь угодно большого проекта.


Агащазблин. Проект может только загружаться в этот РЕПЛ по несколько минут. А если РЕПЛ интерпретирующий, то загруженый проект может просто перестать предоставлять приемлемый отклик. Если ты сайтики лепишь с посещаемостиью в 10 человек в день, то конечно все ОК. А если сложное приложение (GUI, сложная логика или высоконагруженное), то ты приплыл. При этом отладчик позволят находить ошибки и в огромных проектах.

Оптимально конечно иметь возможность править код прямо во время отлкадки и производить замену кода на уровне типов и функций. Чем это хуже РЕПЛа?

M>Я вообще человек мерзостный и глупый, и в силу этого в любом крупном проекте на время разработки и отладки содержу backdoor — висящий на каком либо порту доступный через telnet REPL какого либо скриптового языка с возможностью легко дёргать за reflection и смотреть, что там как внутри работает. Это на порядки удобнее и мощнее чем любой отладчик. Я могу модифицировать код работающего проекта, могу писать и тут же применять сложные тесты, не останавливая работы приложения. Да, это глупо, несекурно, мерзко — но это работает.


Это чушь. Отладчика это не заменит. Да и само наличие "скрипта" уже говорит, что что-то не так. В прочем, я понял что в данном случае речь идет скорее всего о неком диалекте лиспа.

M> REPL распрекрасно рулит и заруливает и для ни разу не функциональных языков.


Лисп?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Жизнь без IDE
От: thesz Россия http://thesz.livejournal.com
Дата: 02.10.09 10:36
Оценка: :)
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, metaprogrammer, Вы писали:


M>> А кому это надо? Зачем голову чушью забивать?

VD>Дык если этих "монстров" не развести на разговор, то создается впечатление, что они вбивают код прямо в командйной строке (включив перенаправление в файл).

Да...

Но откуда ты узнал? Мой домашний макинтош даже не подключен к интернету.

------------
$cat — >A.hs
-- |A
-- An A module.

module A where

import qualified Data.Map as Map

mlookup = Map.lookup
^D
$xce A.hs
------------

xce — вызов XCode дял редактирования.

Типичная сессия в начале чего-нибудь.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Re[10]: Жизнь без IDE
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.10.09 10:37
Оценка:
Здравствуйте, thesz, Вы писали:

T>Но такое тебе в голову придти не может, поскольку в этом случает окажется, что "монстры программирования" всё-таки существуют.


Они так браво говорят банальности, что смахивают на трепачей
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Жизнь без IDE
От: thesz Россия http://thesz.livejournal.com
Дата: 02.10.09 10:47
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, metaprogrammer, Вы писали:


M>> Я правильно понял, что до где-то года 96-го все поголовно решали слишком примитивные задачи, поскольку приличных IDE просто не было (ой, мне сейчас опять про VisualAge начнут напоминать...)?

VD>Ну, почему только про VisualAge. Смолток был в 80-ом и до IBM-а.

О, да.

И широко применялся в проектах по написанию OS/360, например.

VD>>>Вера в REPL тоже забавит.

M>> Это не вера, это практический опыт.
VD>Практический опыт бывает разный. То что для того же Хаскеля не могут 10 лет написать IDE — это тоже практический опыт.

Потому, что Хаскель более-менее популярен всего года два-три, как. Это раз. Потому, что необходимость в IDE меньше, это двас.

Потому и не могут написать IDE вот уже 22 года, аж с 1987.

M>> А вот не фиг раздельную компиляцию разводить. REPL очень удобен для быстрой интроспекции поведения непонятных кусков сколь угодно большого проекта.


VD>Агащазблин. Проект может только загружаться в этот РЕПЛ по несколько минут.


А перегружать изменённый файл в секунды.

Что на деле и наблюдается.

VD>А если РЕПЛ интерпретирующий, то загруженый проект может просто перестать предоставлять приемлемый отклик.


А ты не проверяй весь проект, проверяй только часть.

VD>Если ты сайтики лепишь с посещаемостиью в 10 человек в день, то конечно все ОК. А если сложное приложение (GUI, сложная логика или высоконагруженное), то ты приплыл. При этом отладчик позволят находить ошибки и в огромных проектах.


VD>Оптимально конечно иметь возможность править код прямо во время отлкадки и производить замену кода на уровне типов и функций. Чем это хуже РЕПЛа?


Тем, что дольше. И для полноценной работы требуется возможность отката: поправил, проверил, откатил выполнение, поправил, проверил, откатил выполнение, поправил...

А это далеко не везде возможно.

В REPL ты проверяешь одну функцию на наборе аргументов. Поправил, проверил, поправил, проверил. Отката не требуется.
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Re[11]: Жизнь без IDE
От: thesz Россия http://thesz.livejournal.com
Дата: 02.10.09 10:48
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, thesz, Вы писали:


T>>Но такое тебе в голову придти не может, поскольку в этом случает окажется, что "монстры программирования" всё-таки существуют.

VD>Они так браво говорят банальности, что смахивают на трепачей

Или просто умнее тебя и лучше программируют.

Такое в голову не приходило?
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Re[12]: Жизнь без IDE
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.10.09 10:53
Оценка:
Здравствуйте, FR, Вы писали:

FR>Влад ты же все знаешь, и про монады читал, и ML модули я тебе пару лет назад разъяснял, но почему-то не хочешь понять


Модули вещь исключительно структурная, к ФЯ ни каким боком не имеющая.
Монады никаким боком к декомпозиции не имеют.
Так что я не хочу понять, я не могу понять... о каких таких новых вещах идет речь.

FR>Есть декомпозиция, она отличается от структурной очень сильно.


Да, ну. Где можно про это почитать?

FR>Хорошая структурная это практически ОО,


Бред полнейший.

FR>то есть функции работающие со структурами или капсулированными хендлами, плюс примитивная модульность.


А. Ясно. Ты в терминологии плаваешь. Структурная декомпозиция не имеет никакого отношения к структурам.
Учи мат.часть http://en.wikipedia.org/wiki/Decomposition_(computer_science)

FR>Функциональная же простые функции и ФВП работающие со сложными типами данных, плюс сложные параметризованные модули плюс потоки.


Если ты под "функциональной декомпозицией" понимаешь процесс дробления функций, то я тебя расстрою — это метод структурной декомпозиции. Короче ссылку я тебе уже дал.

VD>>В общем, твои слова бездоказательны и не убедительны.


FR>Нет просто у тебя установка, непробиваемая.


Моя установка очень проста. Если мне приводят непротиворечивые аргументы демонстрирующие что моя позиция не верна, то я ее меняю. Но пока что кроме бравады и заявлений я ничего так и не увидел.

FR>>>Конечно IDE хорошо помогает в навигации по коду, это очень удобно при изучении, но те же генераторы документации ничем для этого не хуже.


VD>>Хуже хотя бы тем, что работают не в реальном времени. Плюс не полноценны.


FR>Зато лучше в том что могут давать информацию в более удобном для восприятия виде.


Это чем же вид то лучше? Ты давно полноценными IDE пользояался?

VD>>Что такое "серьезно работать"? Я им пользовался. По сравнению с IDE — это резкое понижение возможностей.


FR>Это субъективно.


Ага. Твое мнение — это объективно, а мое — субъективно.

FR>И потом не вместо IDE, а скорее рядом, просто это рядом перекрывает многие возможности IDE.


Кому в голову взбредет лезть в репл для поиски имени функции если есть комплит и навигация?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[13]: Жизнь без IDE
От: FR  
Дата: 02.10.09 10:55
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Хотелось бы конкретных примеров. Пока больше похоже на утверждение, что некоторое масло более масленное, чем какое-то другое.


Сложно, все-равно что на конкретных примерах объяснить что такое ООП.
Re[14]: Жизнь без IDE
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.10.09 10:58
Оценка:
Здравствуйте, metaprogrammer, Вы писали:

M> Отличный пример функциональной декомпозиции был в журнале "Практика функционального программирования", про игру в шашки. Подробненько так, шаг за шагом.


Можно ссылку?

ЗЫ

Рабяты. Вы точно терминологией владеете?
http://en.wikipedia.org/wiki/Decomposition_(computer_science)
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[14]: Жизнь без IDE
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.10.09 10:58
Оценка:
Здравствуйте, FR, Вы писали:

FR>Сложно, все-равно что на конкретных примерах объяснить что такое ООП.


ООП отлично объясняется на конкретных примерах. На базе, например, окошек.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Жизнь без IDE
От: FR  
Дата: 02.10.09 11:00
Оценка:
Здравствуйте, VladD2, Вы писали:


VD>Агащазблин. Проект может только загружаться в этот РЕПЛ по несколько минут. А если РЕПЛ интерпретирующий, то загруженый проект может просто перестать предоставлять приемлемый отклик. Если ты сайтики лепишь с посещаемостиью в 10 человек в день, то конечно все ОК. А если сложное приложение (GUI, сложная логика или высоконагруженное), то ты приплыл. При этом отладчик позволят находить ошибки и в огромных проектах.


Применяется обратная схема, REPL встроен в приложение. Как упрощенный пример консоль управления встроенная во многие игры.

VD>Оптимально конечно иметь возможность править код прямо во время отлкадки и производить замену кода на уровне типов и функций. Чем это хуже РЕПЛа?


Крайности смыкаются, в SmallTalk в отладчике вполне доступен REPL
Встроенный REPL как раз и позволяет перезагружать модули и править код на ходу.
Re[12]: Жизнь без IDE
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.10.09 11:00
Оценка:
Здравствуйте, thesz, Вы писали:

VD>>Они так браво говорят банальности, что смахивают на трепачей


T>Или просто умнее тебя и лучше программируют.

T>Такое в голову не приходило?

Ну, как же. Они же только на это и намекают. От чего и смахивают на трепачей только сильнее.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: Жизнь без IDE
От: FR  
Дата: 02.10.09 11:03
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>ООП отлично объясняется на конкретных примерах. На базе, например, окошек.


Можно хотя бы ссылку на такое объяснение?
Re[12]: Жизнь без IDE
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.10.09 11:07
Оценка:
Здравствуйте, FR, Вы писали:

FR>Применяется обратная схема, REPL встроен в приложение. Как упрощенный пример консоль управления встроенная во многие игры.


Это очередная выдумка. REPL не встраивается в приложения F#. Если я имею запущенное приложение F#, то РЕПЛ к нему уже не подключить. А вот отладчик — можно.

Что до консолей в играх, то они позволяют что угодно, но не разрабатывать игры. Консоли там для настроек, для управления, для отладки (трассировки, переключения параметров), но никак не для разработки игр. Даже скрит из них не напишешь. Вместо этого, обычно имеются отдельные дизайнеры уровней в которых и можно писать скрипты. Кроме того есть SDK для разработки игр. Так что как-то ваши фантазии не соответствуют действительности.

VD>>Оптимально конечно иметь возможность править код прямо во время отлкадки и производить замену кода на уровне типов и функций. Чем это хуже РЕПЛа?


FR>Крайности смыкаются, в SmallTalk в отладчике вполне доступен REPL


В Смолток РЕПЛ? Вау? На фиг он там упал? Там среда "живая".

FR>Встроенный REPL как раз и позволяет перезагружать модули и править код на ходу.


Это опять твои фантазии. Перезагружать там ничего не надо. Модулей там тоже нет. Там есть байткод методов которые общаются исключительно сообщениями. Это позволяет менять код методов (в "экземпляре", т.е. в работающем приложении) прямо на ходу.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Жизнь без IDE
От: Denom Украина  
Дата: 02.10.09 11:07
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Опять же я не против РЕПЛ-а. Я против противопоставления РЕПЛ-а наличию IDE.


Согласен. Мне понравился REPL именно как часть IDE
... << RSDN@Home 1.2.0 alpha 4 rev. 1237>>
Re[16]: Жизнь без IDE
От: VladD2 Российская Империя www.nemerle.org
Дата: 02.10.09 11:11
Оценка:
Здравствуйте, FR, Вы писали:

VD>>ООП отлично объясняется на конкретных примерах. На базе, например, окошек.


FR>Можно хотя бы ссылку на такое объяснение?


У меня под рукой нет. А гугль тебе не помог?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[13]: Жизнь без IDE
От: thesz Россия http://thesz.livejournal.com
Дата: 02.10.09 11:26
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, thesz, Вы писали:


VD>>>Они так браво говорят банальности, что смахивают на трепачей


T>>Или просто умнее тебя и лучше программируют.

T>>Такое в голову не приходило?
VD>Ну, как же. Они же только на это и намекают. От чего и смахивают на трепачей только сильнее.

Или, всё же, умнее тебя и лучше программируют. А ты просто завидуешь и пытаешься развести их "на слабо".
Yours truly, Serguey Zefirov (thesz NA mail TOCHKA ru)
Re[13]: Жизнь без IDE
От: FR  
Дата: 02.10.09 11:31
Оценка:
Здравствуйте, VladD2, Вы писали:


VD>Это очередная выдумка. REPL не встраивается в приложения F#. Если я имею запущенное приложение F#, то РЕПЛ к нему уже не подключить. А вот отладчик — можно.


Влад я писал приложения со встроенным реплом на питоне. Для питона есть как стандартные библиотеки для этого, так и модули например из wx http://wiki.wxpython.org/PyWrap который включает REPL и интегрированный диспетчер.
Это нормальная практика. Как в F# с этим я не знаю, но OCaml вполне позволяет это.

VD>Что до консолей в играх, то они позволяют что угодно, но не разрабатывать игры. Консоли там для настроек, для управления, для отладки (трассировки, переключения параметров), но никак не для разработки игр. Даже скрит из них не напишешь. Вместо этого, обычно имеются отдельные дизайнеры уровней в которых и можно писать скрипты. Кроме того есть SDK для разработки игр. Так что как-то ваши фантазии не соответствуют действительности.


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


FR>>Крайности смыкаются, в SmallTalk в отладчике вполне доступен REPL


VD>В Смолток РЕПЛ? Вау? На фиг он там упал? Там среда "живая".


Ты хоть раз Смаллтолк запускал?
Я хоть только и баловался, но сразу же залез в том же Dolphin в Tools/Workspace который представляет собой repl в чистом виде. В других смаллталках он тоже обязательно присутствует.

FR>>Встроенный REPL как раз и позволяет перезагружать модули и править код на ходу.


VD>Это опять твои фантазии. Перезагружать там ничего не надо. Модулей там тоже нет. Там есть байткод методов которые общаются исключительно сообщениями. Это позволяет менять код методов (в "экземпляре", т.е. в работающем приложении) прямо на ходу.


В смаллтолке нет конечно, там есть образ который без проблем меняется на ходу. Зато в питоне есть модули и REPL позволяет их перезагружать, в итоге получаем тоже самое.
Re[17]: Жизнь без IDE
От: FR  
Дата: 02.10.09 11:32
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>>>ООП отлично объясняется на конкретных примерах. На базе, например, окошек.


FR>>Можно хотя бы ссылку на такое объяснение?


VD>У меня под рукой нет. А гугль тебе не помог?


Нет, мне проще читать что таких объяснений нет
Re[10]: Жизнь без IDE
От: Klapaucius  
Дата: 02.10.09 11:53
Оценка:
Здравствуйте, VoidEx, Вы писали:

VE>Он не последователен, он тоже вдаётся в крайность, но противоположную. Одному всё нужно, а другому всё не нужно. Это к последостельности имеет крайне отдалённое отношение.


Вообще-то впадение в крайность никак не мешает быть последовательным. Наоборот — это самый простой способ быть последовательным.
А в данном случае, когда я дискутирую чтобы установить свою позицию, мне нужна достаточная гм... апертура спора с оппонентом. А то или оппонент слишком быстро со мной согласится или я с оппонентом. Никакого испытания точек зрения не получится.

VE>Склоняюсь к тому, что этот критерий вообще разный для разных людей.


Ну, допустим. Но, например, какой?
... << RSDN@Home 1.2.0 alpha 4 rev. 1228>>
'You may call it "nonsense" if you like, but I'VE heard nonsense, compared with which that would be as sensible as a dictionary!' (c) Lewis Carroll
Re[13]: Жизнь без IDE
От: FR  
Дата: 02.10.09 12:16
Оценка: -1
Здравствуйте, VladD2, Вы писали:


FR>>Влад ты же все знаешь, и про монады читал, и ML модули я тебе пару лет назад разъяснял, но почему-то не хочешь понять


VD>Модули вещь исключительно структурная, к ФЯ ни каким боком не имеющая.


Модули из структурных языков и модули ML это разные вещи.

VD>Монады никаким боком к декомпозиции не имеют.


Понятно, значит все-таки не читал

VD>Так что я не хочу понять, я не могу понять... о каких таких новых вещах идет речь.


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


VD>Да, ну. Где можно про это почитать?


Как у Буча не видел, все размазано в разных книгах и статьях.

FR>>Хорошая структурная это практически ОО,


VD>Бред полнейший.


Нет лучший структурный сишный код который я видел во многом эмуляция ООП.

FR>>то есть функции работающие со структурами или капсулированными хендлами, плюс примитивная модульность.


VD>А. Ясно. Ты в терминологии плаваешь. Структурная декомпозиция не имеет никакого отношения к структурам.

VD>Учи мат.часть http://en.wikipedia.org/wiki/Decomposition_(computer_science)

Нет я не плаваю, это ты не читаешь что тебе пишут.

VD>Если ты под "функциональной декомпозицией" понимаешь процесс дробления функций, то я тебя расстрою — это метод структурной декомпозиции. Короче ссылку я тебе уже дал.


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

VD>Моя установка очень проста. Если мне приводят непротиворечивые аргументы демонстрирующие что моя позиция не верна, то я ее меняю. Но пока что кроме бравады и заявлений я ничего так и не увидел.


Угу только ты в упор не видишь аргументов.

FR>>Зато лучше в том что могут давать информацию в более удобном для восприятия виде.


VD>Это чем же вид то лучше? Ты давно полноценными IDE пользояался?


Тем что дают и общий вид системы и возможность детализации.

VD>Ага. Твое мнение — это объективно, а мое — субъективно.


У обоих субъективно.

VD>Кому в голову взбредет лезть в репл для поиски имени функции если есть комплит и навигация?


Многие REPL'ы имеют комплит, а некторые и навигацию
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.