Re[18]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 11:02
Оценка:
Здравствуйте, konsoletyper, Вы писали:

K>К тому же, на каких основаниях мы можем о человеке утверждать, что он эксперт в данном вопросе? Типа, есть люди, хорошо разбирающиеся в том, какие фичи нужны языкам, а какие — нет? Ну и что же они говорят, ссылки есть?


Самое забавное, что эксперт не застрахован от ошибок. К тому же он зачастую предвзят. Так что его хотя его помощь может оказаться очень ценной в прикладных ваопросах, в вопросах оценки оно может быть совершенно бесполезным, а то и вредным.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[17]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 11:02
Оценка: +2
Здравствуйте, alexeiz, Вы писали:

A>Есть множество причин для разделения интерфейса и реализации. Вот одна из них: расскажи мне, как в .NET ты соберешь три модуля a.dll, b.dll и c.dll со следующими зависимостями (-> — зависит от): a.dll -> b.dll, b.dll -> c.dll, c.dll -> a.dll.


А какой смысл в циклических зависимостях интерфейсов?

Я вот уже более пяти лет использую дотнет и ни разу не встречал проблем по этому поводу.

Если сборка А нуждается в общении со сборокой Б, то она просто описывает протокол этого общения в виде интерфейса, абстрактного класса или делегата, а сборка Б реализует этот протокол.

В общем, не выдумывай ерунды. Модульная система продумана досканально и прикрасно работает. А подход С/С++ (текстовые включения файлов) изжил себя уже очень давно и используется по недоразумению.

Разделение же на заголовки и реализацию тоже не имеет смысла в языка где использование типов не зависит от расположение их в коде.

В общем, С++ в этих вопросах безнадежно устарел и тянет только на пример демонстрирующих плохие архитектурные решения.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[18]: Как скрестить ужа и ежа или статическую и утиные тип
От: alexeiz  
Дата: 20.01.07 11:21
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>А какой смысл в циклических зависимостях интерфейсов?


Ты понимаешь интерфейсы в прямом смысле. В широком смысле интерфейсом может быть все что угодно. Любое описание типа.

VD>Я вот уже более пяти лет использую дотнет и ни разу не встречал проблем по этому поводу.


Вот тебе простейший пример с потолка: system.dll & system.xml.dll — модули зависят друг от друга.
Re[17]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 11:35
Оценка:
Здравствуйте, alexeiz, Вы писали:

A>Есть множество причин для разделения интерфейса и реализации. Вот одна из них: расскажи мне, как в .NET ты соберешь три модуля a.dll, b.dll и c.dll со следующими зависимостями (-> — зависит от): a.dll -> b.dll, b.dll -> c.dll, c.dll -> a.dll.


Да, вот еще что... В С++ тоже нельзя создать циклические зависимости интерфейсов. Нельзя создать клас который опосредовано унаследован сам от сбея. Код типа:
class A : B { };
class B : A { };

это ошибка для любого ООЯ!

А выведение реализаций методов в отдельный cpp-файл дает только возможность обойти дурацкое окграничение С++ на то что нельзя создавать экземпляров еще не определенных типов. Можно только создавать указатели и то для этого тоже требуется предварительная декларациях.
Иными словами вот такой код:
clas A
{
    public B GetB() { return new B(); }
};
clas B
{
    public A GetA() { return new A(); }
};

будет кооректен для C#, VB.NET, Nemerle и т.п., но не корректен для C++.

Вот с этим недоразумение и борится вынос разделение класса в С++.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[17]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 11:35
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Скорее тут одна причина — нет альтернативы. BREW и прочие нормальные

C>решения Sun просто своим весом задавила.

О том и речь. С++ хреновая альтернатива управляемым средам.
Хотя конечно AndreiF перегибает палку. Небольшой рынок есть у Сембиан с кастрированным С++. А рынок смартфонов в основном окупируется мобильным фрэймворко от МС. Но последнее тоже управляемая среда. Так что по сути AndreiF прав. Рассказы о том, что встраевыемые решения — это вотчина С++ являются сказками.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[22]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 11:35
Оценка:
Здравствуйте, alexeiz, Вы писали:

A>D пока нигде не играет. Его еще в команду не приняли. То бишь момента у него нет. Да, попал он на /. один раз. Walter не перестает воинствовать на c++.moderated. Однако D сейчас по отношению к C++ это тоже, что и C++ по отношению к C в 1983м году. D пока никто не поддерживает кроме создателя языка.


На самом деле у D все еще хуже. В 1983 у С++ практически не было конкурентов. Был Смолток, но он в те времена совсем не выдерживал конкуреции по производительности. И был Лисп, но он болшинством и по сей деень считается изращением.

Сегодя же у ди главные конкуренты — это управляемые среды. D, как язык проигрывает даже C# 2-3, а уж с разными Nemerle ему вообще тягаться невозможно. Так что во всех областях где наличие VM не критично D пролетит со свистом.

Ну, а так как D очень сильно ушел от С++ о приемственности говорить не прихдится. Ведь С++ был фактически надвидом С. D же имеет очень отдаленное отношение к С.

К тому же у D те же проблемы что и у С++. Он не типобезопасный и не компонетный. Хотя конечно архитектурно D лучше чем С++.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[16]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 11:35
Оценка:
Здравствуйте, alexeiz, Вы писали:

Не оверквотить, пожалуйста.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[19]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 12:05
Оценка:
Здравствуйте, alexeiz, Вы писали:

A>Ты понимаешь интерфейсы в прямом смысле. В широком смысле интерфейсом может быть все что угодно. Любое описание типа.


В данном случае я понимал интерфейс в самом широком смысле. Это ничего не меняет.

VD>>Я вот уже более пяти лет использую дотнет и ни разу не встречал проблем по этому поводу.


A>Вот тебе простейший пример с потолка: system.dll & system.xml.dll — модули зависят друг от друга.


И что? Я не утвреждал, что это не возможно. Это утверждал ты. Я сказал, что нет необходимости завязывать интерфейсы циклично. Разницу ощущашь? Создать циклическую зависимость типов невозможно (причем не тольк в донтете, но и вообще в ООП), а скоздать рекурсивно зависимые сборки можно без проблем. В прочем об этом тебе уже сказал Lazy Cjow Rhrr.

Кстати, ак это твое утвреждение соотностися с другим твоим утверждением
Автор: alexeiz
Дата: 20.01.07
.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[18]: Как скрестить ужа и ежа или статическую и утиные тип
От: Cyberax Марс  
Дата: 20.01.07 12:12
Оценка:
VladD2 wrote:
> О том и речь. С++ хреновая альтернатива управляемым средам.
Почему Windows все еще на C/C++? Потому что управляемость в ряде случаев
просто нафиг не нужна, и даже вредна.

> Хотя конечно AndreiF перегибает палку. Небольшой рынок есть у Сембиан с

> кастрированным С++.
Там уже полный С++ (обычный GCC). Проблемы там были из-за их
самопального механизма возвратов (найти бы урода, который его придумал...).

> А рынок смартфонов в основном окупируется мобильным фрэймворко от МС.

И? Там все существенное unmanaged, так как .NET CF — это нечто страшное.
Тормозное, как и почти все реализации J2ME и возможностей маловато.

> Но последнее тоже управляемая среда.

Да и ни чуть. Вся WinCE — на native.

> Рассказы о том, что встраевыемые решения — это вотчина С++

> являются сказками.
Ну-ну.
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[18]: Как скрестить ужа и ежа или статическую и утиные тип
От: konsoletyper Россия https://github.com/konsoletyper
Дата: 20.01.07 12:25
Оценка: +1
Здравствуйте, VladD2, Вы писали:

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


Именно, что не плохие, а устаревшие. C++ наследует такое поведение от C. А C проектировался в те времена, когда такой подход был необходим для экономии ресурсов. Сейчас, когда экономить нечего, такое решение не подходит.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[19]: Как скрестить ужа и ежа или статическую и утиные тип
От: konsoletyper Россия https://github.com/konsoletyper
Дата: 20.01.07 12:36
Оценка: :)
Здравствуйте, Cyberax, Вы писали:

>> О том и речь. С++ хреновая альтернатива управляемым средам.

C>Почему Windows все еще на C/C++? Потому что управляемость в ряде случаев
C>просто нафиг не нужна, и даже вредна.

Потому что в Windows Vista кое-что попытались переписать, и поняли, что быстрее дописать старый код, чем делать принципиально новый. Вон и так на сколько лет затянули. А так есть у них в Research'е их Singularity. Будь у Microsoft лишние XXX миллиардов баксов, возможно, они бы переписали Виндовс, сделали бы на ядре Singularity. А так, если пользователи не заинтересованы, зачем переписывать?

Внимательно читаем соседние ветки. Там мысль развивается, что смерть C++ не означает, что старые проекты на C++ должны быть немедленно переписаны. Просто новые проекты, начинающиеся с нуля, выгоднее писать на .NET/Java, чем на C++. Кроме того, появилась тенденция дописывать новый код именно как mangaged-надстройку над существующим (VS, например). Там, глядишь, постепенно будут полностью переписывать под managed-среду.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[19]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 12:38
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>VladD2 wrote:

>> О том и речь. С++ хреновая альтернатива управляемым средам.
C>Почему Windows все еще на C/C++? Потому что управляемость в ряде случаев просто нафиг не нужна, и даже вредна.

Виндовс еще на С потому что никто не будет переписывать код нади развлечения и потому что нужна совместимость. Новые куски вроде расширений MMC-консоли уже пишут на управляемом коде. Дальше будет больше.

>> А рынок смартфонов в основном окупируется мобильным фрэймворко от МС.

C>И? Там все существенное unmanaged, так как .NET CF — это нечто страшное.

Интерфейсы клепают уже на CF. Опять же дальше будет больше. Если у людей будет выбор писать на С++ или на управляемо коде, и С++ ничего не даст, то выбор будет все больше и больше делаться в пользу управляемого окда. Причем дело тут не в упрвляемости, а банальной кривизне С++.

C>Тормозное, как и почти все реализации J2ME и возможностей маловато.


Незаметил там ничего тормозного. А маньяки разные и веб-стринчки на С++ будут писать.

>> Но последнее тоже управляемая среда.

C>Да и ни чуть. Вся WinCE — на native.

И что теперь писать из-за этого под нее на С++? Не, ну если бюджет незграничный, то можно конечно. Но смысла нет никагого.

>> Рассказы о том, что встраевыемые решения — это вотчина С++

>> являются сказками.
C>Ну-ну.

Что ну-ну? Встроенных решений на Яве и дотнете прут пруди. И тендеция идет к их увеличению. Это рынок, а он не любит фанатиков. Какое-то время массы еще будут по старинке колбасить код на С++. Но конкуренция сделает свое дело. Дай только время.

И у МС объем управляемого кода будет расти.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[19]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 12:41
Оценка:
Здравствуйте, konsoletyper, Вы писали:

K>Именно, что не плохие, а устаревшие. C++ наследует такое поведение от C. А C проектировался в те времена, когда такой подход был необходим для экономии ресурсов. Сейчас, когда экономить нечего, такое решение не подходит.


Нет. Именно плохого. Еще до появления С были модульные решения. И никакой экономии ресурсаов текстуальные подстановки не дают.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[23]: Как скрестить ужа и ежа или статическую и утиные тип
От: FR  
Дата: 20.01.07 12:44
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>На самом деле у D все еще хуже. В 1983 у С++ практически не было конкурентов. Был Смолток, но он в те времена совсем не выдерживал конкуреции по производительности. И был Лисп, но он болшинством и по сей деень считается изращением.


Пока да дело с этим плохо. Еще плохо то что библиотек очень мало, конечно сишные можно достаточно легко подключить, а С++ нужны враперы.

VD>Сегодя же у ди главные конкуренты — это управляемые среды. D, как язык проигрывает даже C# 2-3, а уж с разными Nemerle ему вообще тягаться невозможно. Так что во всех областях где наличие VM не критично D пролетит со свистом.


Как язык D по моему шарпу ничем ни проигрывает. Интересно было бы узнать в чем именно ты проигрышь увидел.

VD>Ну, а так как D очень сильно ушел от С++ о приемственности говорить не прихдится. Ведь С++ был фактически надвидом С. D же имеет очень отдаленное отношение к С.


Нет к Си по философии он близок, даже по моему ближе чем к C++.

VD>К тому же у D те же проблемы что и у С++. Он не типобезопасный и не компонетный. Хотя конечно архитектурно D лучше чем С++.


В D практически все проблемы C++ разрешены. На нем можно писать вообще не используя опасные конструкции. Типизация в нем тоже жестче чем в C++.
Re[20]: Как скрестить ужа и ежа или статическую и утиные тип
От: Cyberax Марс  
Дата: 20.01.07 13:04
Оценка:
konsoletyper wrote:
> Потому что в Windows Vista кое-что попытались переписать, и поняли, что
> быстрее дописать старый код, чем делать принципиально новый.
Они сначала пытались. В первых пре-альфах Висты, например, был шелл на .NET.

> Вон и так на сколько лет затянули.

Как раз из-за того, что поздно пришли в себя от .NETного угара.

> А так, если пользователи не заинтересованы, зачем переписывать?

Ну как же, есть ведь неоспоримые преимущества управляемых сред (с) Влад.

> Внимательно читаем соседние ветки. Там мысль развивается, что смерть C++

> не означает, что старые проекты на C++ должны быть немедленно
> переписаны. Просто новые проекты, начинающиеся с нуля, выгоднее писать
> на .NET/Java, чем на C++.
Вот KDE4 есть — полный рефакторинг KDE3. Ничего, с С++ и QT полет
нормальный.
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[24]: Как скрестить ужа и ежа или статическую и утиные тип
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.01.07 13:07
Оценка:
Здравствуйте, FR, Вы писали:

FR>Еще плохо то что библиотек очень мало, конечно сишные можно достаточно легко подключить, а С++ нужны враперы.


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

FR>Как язык D по моему шарпу ничем ни проигрывает. Интересно было бы узнать в чем именно ты проигрышь увидел.


Проигрывает и еще как. Шарп полностью типобезопасен. Он имеет более внятный синтаксис. Лучшую документацию. Одни анонимыне методы чего стоят? В ди с ними проблем выше крыши. Ни тебе лексической области видимости, ни безопасности.

Ну, да как говорилось в одном анекдоте — я знал что по первому (в данном случае по последнему) вопросу прений не будет. Похоже никто уже не сомневается, что спроектирован Ди хуже чем Немерле.

VD>>Ну, а так как D очень сильно ушел от С++ о приемственности говорить не прихдится. Ведь С++ был фактически надвидом С. D же имеет очень отдаленное отношение к С.


FR>Нет к Си по философии он близок, даже по моему ближе чем к C++.


Я оговорился. К С++ имелось в виду. К С он действительно довольно близок. Но времена когда это было актуально прошли. Сегодня надо быть совместимым с С++. А то и с Явой/дотентом. А тут у Ди проблемы.

FR>В D практически все проблемы C++ разрешены.


Агащазблин. Это мы уже видили в примере возврата указателя из анонимного метода. Таких ды в современных языках допускать нельзя.

FR> На нем можно писать вообще не используя опасные конструкции. Типизация в нем тоже жестче чем в C++.


На С++ тоже в можно писать в безопасном стиле. Оберни все и вся, не пользуйся половиной языка и будет тебе щастье. Только вот ошибки делают не специально. А ошибки типов обычно очень дорого стоят.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[20]: Как скрестить ужа и ежа или статическую и утиные тип
От: igna Россия  
Дата: 20.01.07 13:12
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Что ну-ну? Встроенных решений на Яве и дотнете прут пруди. И тендеция идет к их увеличению. Это рынок, а он не любит фанатиков. Какое-то время массы еще будут по старинке колбасить код на С++. Но конкуренция сделает свое дело. Дай только время.


Уверен? А что если через N лет C++ еще будет использоваться, а Яву и дотнет заменят к примеру Хаскель и Маскель какие-нибудь, а? Скажи, что этого не будет, я поставлю себе напоминалку в телефоне и через N лет проверю.
Re[20]: Как скрестить ужа и ежа или статическую и утиные тип
От: Cyberax Марс  
Дата: 20.01.07 13:16
Оценка:
VladD2 wrote:
> C>Почему Windows все еще на C/C++? Потому что управляемость в ряде
> случаев просто нафиг не нужна, и даже вредна.
> Виндовс еще на С потому что никто не будет переписывать код нади
> развлечения и потому что нужна совместимость. Новые куски вроде
> расширений MMC-консоли уже пишут на управляемом коде. Дальше будет больше.
MMC-консоль теперь будет идолом управляемого кода?

А как же наборы букв типа WPF/WCF/...? Почему MS не использует WPF для
продуктов с переработаным интерфейсом (i.e. Office)?

>> > А рынок смартфонов в основном окупируется мобильным фрэймворко от МС.

> C>И? Там все существенное unmanaged, так как .NET CF — это нечто страшное.
> Интерфейсы клепают уже на CF.
Где? Передо мной смартфон с Windows Mobile 2003 Second Edition — там CF
только для устанавливаемых приложений используется. Все остальное —
нативное.

> Опять же дальше будет больше. Если у людей

> будет выбор писать на С++ или на управляемо коде, и С++ ничего не даст,
> то выбор будет все больше и больше делаться в пользу управляемого окда.
> Причем дело тут не в упрвляемости, а банальной кривизне С++.
Если у людей будет выбор: писать продукт на С/C++ и не писать его
вообще, угадай что они выберут?

Насчет C# vs C++ тоже есть вопросы.

> C>Тормозное, как и почти все реализации J2ME и возможностей маловато.

> Незаметил там ничего тормозного. А маньяки разные и веб-стринчки на С++
> будут писать.
Да, причем оно помещается в 2Мб флешки.

>> > Но последнее тоже управляемая среда.

> C>Да и ни чуть. Вся WinCE — на native.
> И что теперь писать из-за этого под нее на С++? Не, ну если бюджет
> незграничный, то можно конечно. Но смысла нет никагого.
Скорость — мобильные процессоры и так торрррррмооззза.
Экономичность — MP3-плеер на C#, работающий непрерывно, сожрет
намного больше энергии, чем он же на С++. То же касается и игр.

Кстати, угадай на чем пишут игры для самых популярных наладонных игровых
платформ (PSP и Nintendo DS)? Подсказываю, это слово кончается на два плюса.

>> > Рассказы о том, что встраевыемые решения — это вотчина С++

>> > являются сказками.
> C>Ну-ну.
> Что ну-ну? Встроенных решений на Яве и дотнете прут пруди. И тендеция
> идет к их увеличению. Это рынок, а он не любит фанатиков. Какое-то время
> массы еще будут по старинке колбасить код на С++. Но конкуренция сделает
> свое дело. Дай только время.
Встроеные решения на Java — это два варианта. High-end или простенькие
игрушки.

Середины там совсем нет, так как на Java нельзя работать с железом (а
это нужно почти всегда во встраиваемых устройствах).

> И у МС объем управляемого кода будет расти.

Еще бы. Куда же они денутся. Только вот brave managed world еще
откладывается на несколько лет (минимум).
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[25]: Как скрестить ужа и ежа или статическую и утиные тип
От: FR  
Дата: 20.01.07 13:24
Оценка:
Здравствуйте, VladD2, Вы писали:


FR>>Как язык D по моему шарпу ничем ни проигрывает. Интересно было бы узнать в чем именно ты проигрышь увидел.


VD>Проигрывает и еще как. Шарп полностью типобезопасен. Он имеет более внятный синтаксис. Лучшую документацию. Одни анонимыне методы чего стоят? В ди с ними проблем выше крыши. Ни тебе лексической области видимости, ни безопасности.


Да про замыкания я забыл. Но анонимные методы есть, плюс есть практически блоки кода (неявная подстановка делегата в параметры), и есть lazy парметры, тут D уже обошел Шарп.

VD>Ну, да как говорилось в одном анекдоте — я знал что по первому (в данном случае по последнему) вопросу прений не будет. Похоже никто уже не сомневается, что спроектирован Ди хуже чем Немерле.


Нет это просто разные не сравнимые вещи. Нельзя сказать что апельсины лучше яблок.


VD>Я оговорился. К С++ имелось в виду. К С он действительно довольно близок. Но времена когда это было актуально прошли. Сегодня надо быть совместимым с С++. А то и с Явой/дотентом. А тут у Ди проблемы.


Это да. Сделали бы хоть автоматическй com врапер как в delphi.

FR>>В D практически все проблемы C++ разрешены.


VD>Агащазблин. Это мы уже видили в примере возврата указателя из анонимного метода. Таких ды в современных языках допускать нельзя.


Да замыкания надо править.

FR>> На нем можно писать вообще не используя опасные конструкции. Типизация в нем тоже жестче чем в C++.


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


На D можно не напрягаясь писать безопасно, например массивы контролируются, необходимости пользоватся указателями практически нет, типизация жестче, сложные и ошибкоопасные вещи типа конструкторов копирования отсутствуют. И главное на порядок меньше мест с UB.
В C++ это делается только прикладывая немалые усилия.
Кроме того в D есть способы повысить безопасность кода (те же контракты и юнит тесты)
Re[19]: Как скрестить ужа и ежа или статическую и утиные тип
От: Андрей Хропов Россия  
Дата: 20.01.07 13:30
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>VladD2 wrote:

>> О том и речь. С++ хреновая альтернатива управляемым средам.
C>Почему Windows все еще на C/C++?
По историческим причинам. Потому что переписывать 50 млн. строк работающего (хотя бы отчасти )
кода очень дорого и займет просто немеряное количество времени.

C>Потому что управляемость в ряде случаев

C>просто нафиг не нужна, и даже вредна.
Чем же она вредна? Я бы отметил единственный недостаток — то что потребляет больше ресурсов (особенно пямяти).

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

Будущее ОС безусловно движется в сторону верифицируемых языков — посмотри на разрабатываемые ОС будь то Singularity со всякими Spec# или Coyotos с BitC.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.