Re[35]: Дополнение к посту Vermicious Knid
От: pavel74  
Дата: 15.09.06 19:20
Оценка: 6 (1)
Здравствуйте, VladD2, Вы писали:

VD>>>Гибкость можно достичь и при тотальном контрле компилятора. Просто это сложнее сделать. Но будующее за сложным изнутри и простым с наружи.

P>>О — тоже верно! "Просто это сложнее сделать" — дык часто бывает надо не сложнее а быстрее, а скорости работы результата более чем хватает.

VD>Не надо извращать моис лова. "Просто это сложнее сделать" относится к разработке языка, а не к его применению.

Хм, эта твоя мысль из текста была не очевидна, ну да ладно.


VD>Да потому что это крутость уже из всех дыр. Много слов о том что динамически языки лучше, но большая часть софта пишется не на них, а банальное сравнение объемов кода показвает, что эти самые крутые динамически в дрызг проигрывают новым статическим языкам.

Ну почему всегда крайности-то типа "в дрызг проигрывают", много же разных факторов, начиная от языка кончая ситуацией в мире.

P>> , никто и неговорит что супер-круты и круче токо горы, нету "серебрянной" пули.


VD>Дык как раз говорят. И я уж даже сам начал верить. Но вот копнул... и все не так гладно. Точно совсем печально.

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


P>> Есть в "динамике" своя привлекательность, ты это сам даже признал, несколькими постами выше.


VD>Я и не отказываюсь от этого. Да, есть плюсы. Но они же пораждают минусы. А главное, что есть факторы независящие от того динамический язык или нет. Вот паттерн-матчинг, например. Он есть в статическом, но компонентном Немерле, в динамическом Эрланге и в статическом и совсем не компонентном ОКамле. И веще он неизменно дает отличный резуальтат с точки зарения выразительности.

А кто-то разве спорит что паттерн-матчинг плохо, реально хорошая вещь.


P>> Лично мне такой принцип разработки (еще раз — интеактивное инкрементальное построение программы мальнькими кусочками) очень нравиться.


VD>Не поверишь, но мне тоже. Так что у нас много общего. Только в одном мы расхдится. Ты считашь, что он хорош только для Смолтока, а я использую его везде.

Принцип хорош сам по себе, вне зависимости от языка. Я считаю что в Smalltalk он реализован наиболее полно и тотально, и в основном из-за этого Smalltalk мне и нравится.

P>> Возможно что ради него Smalltalk и проектировался, динамичечская типизация использована чтобы решить данную задачу.


VD>И как же она решает эту задачу? И почему же эта задача неплохо решается и в C#?

VD>Все мои програмы написанные на C# писались именно так. Маленькими инкреминтальными шажками с постоянном тестированием (но чаще без юнит-тестов).
Хм, к примеру, в Smalltalk:
— разработка программы всегда идет как бы в run-time-е.
— всегда можно добраться до любого объекта и до любой точки текущего отлаживаемого стека и посмотреть значения любых переменных и внутренних инстанс переменных класса. (это наверняка есть и в C#)
— если какая проблема то состояние объектов не сбрасывается, просто в отладке находиш причину как праваило ее устраняеш и продолжаеш выполнение дальше.
— всегда могу добавить новый класс и тут же его заюзать в отлаживаемом методе, исправив код прямо в дебугере.
— могу изменять кол-во инстанс переменных в классе (добавить или удалить), при этом живые экземпляры класса не ломаются.
— могу у любого класса посмотреть какие у него есть инстансы.
— могу для любого инстанса посмотреть кто на него ссылается.
— могу для любого класса добавлять удалять методы.
— все это можно делать программно.
— все эти правки не требуют прерывания работы программы (с потерей состояния), перекомпиляции и перезагрузки.

Что-то я сомневаюсь что есть какие-та аналоги Smalltalk-а в этом плане, я по крайне мере про них не слышал.


VD>Самые крутые среды для Смолтока (о Руби и Питоне вообще не говорю) на поверку оказываются середнячками сильно уступающими лушим IDE для Java и C#.

Токо дело тут в количесвте денег и человеко-лет вбуханных в эти IDE.


VD>Это уже делал IBM. И очень упроно делал. Во второй половине 90-ых прошлого века. Но кончилось все тем, что эти проекты были выброшены на свалку истории, и сейчас IBM во всю развивает Яву.

Это же политика, IBM поняла что ей срочно пора "дружить" против Microsoft и друга она нашла в Java (Sun-е) и еще Oracle с этой компанией "дружит", понятно против кого .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.