Re[79]: ToString()
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.12.04 01:59
Оценка:
Здравствуйте, Bigger, Вы писали:

B>Чем же он убог до безобразия, блин,


Это уже обсуждалось сотню раз. Сделай поиск.

B> а мне казалось, что С# — это кастрированный С++


Казалось. Пороботай на нем пол годика и сам поймешь.

B>Иногда отрыв от земли завершаеться падением на задницу (с) моё.


Бедные птички.

B>Vlad2 мне надо бросить C++ и пересесть на C#,


Надо?

B> только для моей задачи — это однозначно похороны


Что за задача?
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[80]: ToString()
От: Bigger Российская Империя  
Дата: 20.12.04 08:46
Оценка:
Здравствуйте, VladD2, Вы писали:

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


B>>Чем же он убог до безобразия, блин,


VD>Это уже обсуждалось сотню раз. Сделай поиск.


Да и так читаю все эти войны

B>> а мне казалось, что С# — это кастрированный С++


VD>Казалось. Пороботай на нем пол годика и сам поймешь.


B>>Иногда отрыв от земли завершаеться падением на задницу (с) моё.


VD>Бедные птички.


Птички на задницу не падают

B>>Vlad2 мне надо бросить C++ и пересесть на C#,


VD>Надо?


Типа решай сам, вот это мудро

B>> только для моей задачи — это однозначно похороны


VD>Что за задача?


Архивирование данных в SCADA, в режиме реального времени, заливка в MS SQL2K порядка 1млн.записей в секунду

Программист — это шаман..., подарите бубен!
Re[81]: ToString()
От: slegkapjan  
Дата: 20.12.04 10:40
Оценка: +3 :)
Честно говоря, у меня вызывают умиление люди, которые говорят, что один язык _лучше_ другого. Вообще, предикат лучше не стоит использовать без дополнительных поясняющих условий, иначе он теряет всякий смысл.

Что же касается до Си, скажу следующее: Си язык в некотором роде уникальный -- он отражает то, что есть на реальном железе. Он естественен по своей структуре. Поэтому он не погибнет _никогда_, ведь трудно придумать более подходящего решения для создания самых нужных, основопологающих вещей -- операционных систем, СУБД, компиляторов, кодеков, компрессоров\декомпрессоров\архиваторов и проч. и проч.

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

Когда же язык _заставляет_ меня делать что-то, что я считаю неправильным, то я отказываюсь от такого языка.
Re[80]: ToString()
От: slegkapjan  
Дата: 20.12.04 11:20
Оценка: +2
VD>Здравствуйте, Bigger, Вы писали:

B>>Чем же он убог до безобразия, блин,


VD>Это уже обсуждалось сотню раз. Сделай поиск.


А вот это уже просто смешно. Смешно и ничего более. На чем написана ОС, браузер, компилятор, имейл-клиент и проч. и проч.? Хмм... говорить, что язык, добившийся такой головокружительной высоты является "убогим"...
Re[82]: ToString()
От: slegkapjan  
Дата: 20.12.04 11:23
Оценка: 7 (3)
из предисловия к книге Ал. Стивенса "ТЕХНИКА ПРОГРАММИРОВАНИЯ НА ТУРБО СИ"]

В данной книге вы столкнетесь с программами, написанными на
языке Си. Это замечательный язык, и хотя некоторым он не
нравится, но все же большинство программистов его любят. На Си вы
можете создавать программы, которые делают все, что вы пожелаете.
Нет другого такого языка, который бы так же стимулировал к
программированию. Создается впечатление, что остальные языки
программирования воздвигают искусственные препятствия для
творчества, а Си — нет. Использование этого языка позволяет
сократить затраты времени на создание работающих программ. Си
позволяет программировать быстро, эффективно и предсказуемо. Еще
одно преимущество Си заключается в том, что он позволяет
использовать все возможности вашей ЭВМ. Этот язык создан
программистом для использования другими программистами, чего о
других языках программирования сказать нельзя ............
.................................................................
.................................................................
...создан таким, чтобы менеджеры могли разбираться в написанных
этом языке программах; Бэйсик был создан для непрограммистов;
Фортран — для научных работников; Ада вообще был создан
прямо-таки правительственным комитетом; Пайлот создан для
учителей; Паскаль — для студентов; Лого — для детей; АПЛ — для
марсиан; Форт, Лисп и Пролог — специализированные языки. Один Си
— это язык для программистов.
Re[81]: ToString()
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.12.04 20:17
Оценка: -1 :)
Здравствуйте, slegkapjan, Вы писали:

S>А вот это уже просто смешно. Смешно и ничего более. На чем написана ОС, браузер, компилятор, имейл-клиент и проч. и проч.?


История скоро изменится (с) Назад в будущее.

S> Хмм... говорить, что язык, добившийся такой головокружительной высоты является "убогим"...


Ага.
... << RSDN@Home 1.1.4 beta 3 rev. 267>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[82]: ToString()
От: slegkapjan  
Дата: 21.12.04 08:47
Оценка:
S>>А вот это уже просто смешно. Смешно и ничего более. На чем написана ОС, браузер, компилятор, имейл-клиент и проч. и проч.?
VD>История скоро изменится (с) Назад в будущее.
Это далеко еще не факт.
Re[83]: ToString()
От: VladD2 Российская Империя www.nemerle.org
Дата: 21.12.04 09:21
Оценка: :)
Здравствуйте, slegkapjan, Вы писали:

VD>>История скоро изменится (с) Назад в будущее.

S>Это далеко еще не факт.

Имеющий уши да увидит.
... << RSDN@Home 1.1.4 beta 3 rev. 267>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[83]: ToString()
От: VladD2 Российская Империя www.nemerle.org
Дата: 21.12.04 09:23
Оценка: -1
Здравствуйте, slegkapjan, Вы писали:

VD>>История скоро изменится (с) Назад в будущее.

S>Это далеко еще не факт.

Имеющий уши да увидит.
... << RSDN@Home 1.1.4 beta 3 rev. 267>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[84]: ToString()
От: slegkapjan  
Дата: 21.12.04 20:16
Оценка: +2 :))) :)
1) C++ более богатый язык, нежели C#. Все средства языка, стандартной библиотеки, среды исполнения, которые есть в C# либо существют в C++ либо можно реализовать на C++. Обратное утверждение не верно.
2) C++ более универсальный язык, чем C#. Все что можно написать на C#, можно написать на C++. Обратное утверждение не верно.
3) Программы на C++ быстрее чем программы на C#. Для любой программы на C# можно написать аналогичню на C++, которая будет работать быстрее. Обратное утверждение не верно.
4) Программы на C++ более переносимы, чем программы на C#. Написанные на С++ программы (при должном уровне программирования) легко переносить на другие платформы, что в случае с C# довольно ограничено.
5) C++ более гибкий язык -- вы можете программировать на уровне ассемблера, а можете использовать языковые средства сверхвысокого уровня. В случае с C# это не верно.
6) На C++ написаны терабайты кода, при желании в сети можно найти библиотки и исходные коды, решающие любые задачи: от операционной системы, до движка для игры.
7) Для программ на C++ не нужны мегабайты дополнительных библиотек.
...

Этот список можно продолжать еще очень долго. Я срашиваю у сторонников C#: "что же может предложить это еще одно сомнительное изобретение Майкрософт в ответ на всю мощь, скорость, экспрессивность, гибкость и богатсвто C++?"
Re[85]: ToString()
От: Dimonizhe  
Дата: 22.12.04 07:49
Оценка:
Здравствуйте, slegkapjan, Вы писали:

S>

[поскипано ] С++ супер мега турбо пупер дупер рулез с педалями.
S>...

S>Этот список можно продолжать еще очень долго. Я срашиваю у сторонников C#: "что же может предложить это еще одно сомнительное изобретение Майкрософт в ответ на всю мощь, скорость, экспрессивность, гибкость и богатсвто C++?"


Может предложить только одно — стоимость проектов бля бизнес приложений СУЩЕСТВЕННО ниже. Поддержка СУЩЕСТВЕННО дешевле.
А для бизнеса только этот пункт существенен. А все остальное никого не интересует.
Re[85]: ToString()
От: Sinclair Россия https://github.com/evilguest/
Дата: 22.12.04 07:49
Оценка: +2 -1
Здравствуйте, slegkapjan, Вы писали:
Люблю я этот форум. Аншлаг отдыхает.
S>1) C++ более богатый язык, нежели C#. Все средства языка, стандартной библиотеки, среды исполнения, которые есть в C# либо существют в C++ либо можно реализовать на C++.
Да-да-да. Продемонстрируй мне Code Access Security на С++ (неуправляемом).
S> Обратное утверждение не верно.
И что же такого из плюсов нельзя реализовать на C#?
S>2) C++ более универсальный язык, чем C#. Все что можно написать на C#, можно написать на C++. Обратное утверждение не верно.
И что же такого из плюсов нельзя реализовать на C#?

S>3) Программы на C++ быстрее чем программы на C#. Для любой программы на C# можно написать аналогичню на C++, которая будет работать быстрее.

Да ну правда что ли? Ускоряем прямо любые-любые программы? Как будем мерить производительность? На прогретой машине?
S>Обратное утверждение не верно.
S>4) Программы на C++ более переносимы, чем программы на C#. Написанные на С++ программы (при должном уровне программирования) легко переносить на другие платформы, что в случае с C# довольно ограничено.
А можешь подробнее изложить свои заблуждения об ограничениях легкости переноса C# на другие платформы?
S>5) C++ более гибкий язык -- вы можете программировать на уровне ассемблера, а можете использовать языковые средства сверхвысокого уровня. В случае с C# это не верно.
Какие возможности С++ по программированию на уровне ассемблера отстутствуют в C#? Какие языковые средства сверхвысокого уровня С++ отстутствуют в C#? Чем можно безуспешно попытаться заменить метаинформацию в С++?
S>6) На C++ написаны терабайты кода, при желании в сети можно найти библиотки и исходные коды, решающие любые задачи: от операционной системы, до движка для игры.
S>7) Для программ на C++ не нужны мегабайты дополнительных библиотек.
Да? А как же терабайты кода из пункта 6? Или они уже перестали быть нужны?

S>Этот список можно продолжать еще очень долго.

Да. А можно остановиться и подумать.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[86]: ToString()
От: slegkapjan  
Дата: 22.12.04 09:10
Оценка: +1 -2 :)
S>Здравствуйте, slegkapjan, Вы писали:
S>Люблю я этот форум. Аншлаг отдыхает.
Аншлаг действительно отдыхает.

S>>1) C++ более богатый язык, нежели C#. Все средства языка, стандартной библиотеки, среды исполнения, которые есть в C# либо существют в C++ либо можно реализовать на C++.

S>Да-да-да. Продемонстрируй мне Code Access Security на С++ (неуправляемом).
Честно говоря не совсем понимаю термин "Code Access Security". Если под этим понимается доступ (чтение/запись) к коду, то это вполне возможно в рамках ОС.

S>> Обратное утверждение не верно.

S>И что же такого из плюсов нельзя реализовать на C#?
S>>2) C++ более универсальный язык, чем C#. Все что можно написать на C#, можно написать на C++. Обратное утверждение не верно.
S>И что же такого из плюсов нельзя реализовать на C#?
Операционную систему.

S>>3) Программы на C++ быстрее чем программы на C#. Для любой программы на C# можно написать аналогичню на C++, которая будет работать быстрее.

S>Да ну правда что ли? Ускоряем прямо любые-любые программы? Как будем мерить производительность? На прогретой машине?
Это вообще неспортивно вести спор таким образом. C# медленнее чем C++, и не стоит хамить раз уж нет достойного ответа.

S>>Обратное утверждение не верно.

S>>4) Программы на C++ более переносимы, чем программы на C#. Написанные на С++ программы (при должном уровне программирования) легко переносить на другие платформы, что в случае с C# довольно ограничено.
S>А можешь подробнее изложить свои заблуждения об ограничениях легкости переноса C# на другие платформы?
Пожалуйста. Можно ли перенести программу на C# под Palm OS?

S>>5) C++ более гибкий язык -- вы можете программировать на уровне ассемблера, а можете использовать языковые средства сверхвысокого уровня. В случае с C# это не верно.

S>Какие возможности С++ по программированию на уровне ассемблера отстутствуют в C#? Какие языковые средства сверхвысокого уровня С++ отстутствуют в C#? Чем можно безуспешно попытаться заменить метаинформацию в С++?
Любые средства C# можно успешно заменить средством C++.

S>>6) На C++ написаны терабайты кода, при желании в сети можно найти библиотки и исходные коды, решающие любые задачи: от операционной системы, до движка для игры.

S>>7) Для программ на C++ не нужны мегабайты дополнительных библиотек.
S>Да? А как же терабайты кода из пункта 6? Или они уже перестали быть нужны?
Опять неспортивное поведение.

S>>Этот список можно продолжать еще очень долго.

S>Да. А можно остановиться и подумать.
Еще раз неспортивное поведение.
Re[86]: ToString()
От: slegkapjan  
Дата: 22.12.04 09:13
Оценка: +1 -1
D>Может предложить только одно — стоимость проектов бля бизнес приложений СУЩЕСТВЕННО ниже. Поддержка СУЩЕСТВЕННО дешевле.
D>А для бизнеса только этот пункт существенен. А все остальное никого не интересует.
С этим абсолютно согласен.
Re[87]: ToString()
От: Sinclair Россия https://github.com/evilguest/
Дата: 22.12.04 09:34
Оценка:
Здравствуйте, slegkapjan, Вы писали:
S>>Да-да-да. Продемонстрируй мне Code Access Security на С++ (неуправляемом).
S>Честно говоря не совсем понимаю термин "Code Access Security". Если под этим понимается доступ (чтение/запись) к коду, то это вполне возможно в рамках ОС.
А ты пойди и почитай. Грубо говоря, это возможность разрешать коду из пакета А выполнять код из пакета B, а коду из пакета C запрещать это делать.
S>>> Обратное утверждение не верно.
S>>И что же такого из плюсов нельзя реализовать на C#?
S>>>2) C++ более универсальный язык, чем C#. Все что можно написать на C#, можно написать на C++. Обратное утверждение не верно.
S>>И что же такого из плюсов нельзя реализовать на C#?
S>Операционную систему.
Ну-ну. А что, у нас есть примеры операционок на чистом С++? Или все-таки там фрагменты runtime на асме написаны?
S>Это вообще неспортивно вести спор таким образом. C# медленнее чем C++, и не стоит хамить раз уж нет достойного ответа.
Спортивно-спортивно. Просто ты несешь такую чушь и с таким апломбом. Ты хоть понимаешь, что выражение "ускорить любую программу" означает примерно то же самое, что и "сжать любой бинарный вектор"? И точно так же можно построить программу на C#, которая будет джиттиться в неулучшаемый код?
S>>А можешь подробнее изложить свои заблуждения об ограничениях легкости переноса C# на другие платформы?
S>Пожалуйста. Можно ли перенести программу на C# под Palm OS?
Да нет проблем. Ну нет (пока) фреймворка под палмос. Ну и что? Язык-то это как затрагивает?
S>>>5) C++ более гибкий язык -- вы можете программировать на уровне ассемблера, а можете использовать языковые средства сверхвысокого уровня. В случае с C# это не верно.
S>>Какие возможности С++ по программированию на уровне ассемблера отстутствуют в C#? Какие языковые средства сверхвысокого уровня С++ отстутствуют в C#? Чем можно безуспешно попытаться заменить метаинформацию в С++?
S>Любые средства C# можно успешно заменить средством C++.
Перечитай вопрос. Приведи пример успешной замены метаинформации в C# эквивалентным средством С++.
S>>>6) На C++ написаны терабайты кода, при желании в сети можно найти библиотки и исходные коды, решающие любые задачи: от операционной системы, до движка для игры.
S>>>7) Для программ на C++ не нужны мегабайты дополнительных библиотек.
S>>Да? А как же терабайты кода из пункта 6? Или они уже перестали быть нужны?
S>Опять неспортивное поведение.
А по существу?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[88]: ToString()
От: slegkapjan  
Дата: 22.12.04 09:42
Оценка: +1 -2 :)
S>>>Да-да-да. Продемонстрируй мне Code Access Security на С++ (неуправляемом).
S>>Честно говоря не совсем понимаю термин "Code Access Security". Если под этим понимается доступ (чтение/запись) к коду, то это вполне возможно в рамках ОС.
S>А ты пойди и почитай. Грубо говоря, это возможность разрешать коду из пакета А выполнять код из пакета B, а коду из пакета C запрещать это делать.
Зачем запрещать что-то? Между C++ и C# есть разница в философии построения языка.

S>>>> Обратное утверждение не верно.

S>>>И что же такого из плюсов нельзя реализовать на C#?
S>>>>2) C++ более универсальный язык, чем C#. Все что можно написать на C#, можно написать на C++. Обратное утверждение не верно.
S>>>И что же такого из плюсов нельзя реализовать на C#?
S>>Операционную систему.
S>Ну-ну. А что, у нас есть примеры операционок на чистом С++? Или все-таки там фрагменты runtime на асме написаны?
Для большиства операционок небольшая часть кода написана на ассемблере, остальное на C++. Опять же C# использовать вместо C++ в этой связке невозможно.

S>>Это вообще неспортивно вести спор таким образом. C# медленнее чем C++, и не стоит хамить раз уж нет достойного ответа.

S>Спортивно-спортивно. Просто ты несешь такую чушь и с таким апломбом. Ты хоть понимаешь, что выражение "ускорить любую программу" означает примерно то же самое, что и "сжать любой бинарный вектор"? И точно так же можно построить программу на C#, которая будет джиттиться в неулучшаемый код?
Посмотри внимательнее на посты. Я не использовал термина "усокрить"

S>>>А можешь подробнее изложить свои заблуждения об ограничениях легкости переноса C# на другие платформы?

S>>Пожалуйста. Можно ли перенести программу на C# под Palm OS?
S>Да нет проблем. Ну нет (пока) фреймворка под палмос. Ну и что? Язык-то это как затрагивает?
А скажи пожалуйста, ты думаешь что можно в принципе написать фреймворк C# для любой платформы?

S>>>>5) C++ более гибкий язык -- вы можете программировать на уровне ассемблера, а можете использовать языковые средства сверхвысокого уровня. В случае с C# это не верно.

S>>>Какие возможности С++ по программированию на уровне ассемблера отстутствуют в C#? Какие языковые средства сверхвысокого уровня С++ отстутствуют в C#? Чем можно безуспешно попытаться заменить метаинформацию в С++?
S>>Любые средства C# можно успешно заменить средством C++.
S>Перечитай вопрос. Приведи пример успешной замены метаинформации в C# эквивалентным средством С++.
Скажи конкретные вещи, как они должны работать и я тебе приведу аналог в C++.

S>>>>6) На C++ написаны терабайты кода, при желании в сети можно найти библиотки и исходные коды, решающие любые задачи: от операционной системы, до движка для игры.

S>>>>7) Для программ на C++ не нужны мегабайты дополнительных библиотек.
S>>>Да? А как же терабайты кода из пункта 6? Или они уже перестали быть нужны?
S>>Опять неспортивное поведение.
S>А по существу?
Я просто как раз-то и не понимаю сути вопроса. Ты можешь сказать конкретно что тебя интересует?
Re[87]: ToString()
От: Dimonizhe  
Дата: 22.12.04 09:43
Оценка:
Здравствуйте, slegkapjan, Вы писали:


D>>Может предложить только одно — стоимость проектов бля бизнес приложений СУЩЕСТВЕННО ниже. Поддержка СУЩЕСТВЕННО дешевле.

D>>А для бизнеса только этот пункт существенен. А все остальное никого не интересует.
S>С этим абсолютно согласен.

Гуд. Рассуждаем дальше. Например, написание операционных систем — этот класс задач намного уже (читай, этим занимаются намного меньше людей) чем обычные бизнес системы.
Это значит, что ниша С++ должна стать и становится узкой за счет отбирание данной огромной области. Т.е. никто не говорит что С++ отстой. Просто в бизнесе ему делать нечего. Вот и все.
Re[89]: ToString()
От: Sinclair Россия https://github.com/evilguest/
Дата: 22.12.04 10:37
Оценка:
Здравствуйте, slegkapjan, Вы писали:
S>Зачем запрещать что-то? Между C++ и C# есть разница в философии построения языка.
А, ну то есть вместо доказательства "на с++ можно все" мы переходим к опровержению необходимости этого "всего". Все же почитай про CAS. Вкратце: это делается для того, чтобы вредоносный код не мог вызвать нехорошую вещь. Например, вирус, который ты выкачал из интернета под видом видеокодека, не сможет полезть управлять сервисами. Потому, что ему не дано такого разрешения. И это несмотря на то, что вирус выполняется под твоими пользовательскими привилегиями. На C# я помечаю опасный метод атрибутом, который говорит "здесь нужен специальный пермишшн". И код, которому не выдан пермишшн, не сможет вызвать этот метод.
S>Для большиства операционок небольшая часть кода написана на ассемблере, остальное на C++. Опять же C# использовать вместо C++ в этой связке невозможно.
Почему?
S>>>Это вообще неспортивно вести спор таким образом. C# медленнее чем C++, и не стоит хамить раз уж нет достойного ответа.
S>>Спортивно-спортивно. Просто ты несешь такую чушь и с таким апломбом. Ты хоть понимаешь, что выражение "ускорить любую программу" означает примерно то же самое, что и "сжать любой бинарный вектор"? И точно так же можно построить программу на C#, которая будет джиттиться в неулучшаемый код?
S>Посмотри внимательнее на посты. Я не использовал термина "усокрить"
Ты написал, что любую C# программу ты сможешь заменить эквивалентной программой на С++, которая будет более быстрой. Тебе все еще неочевидно, что ты гонишь?
S>А скажи пожалуйста, ты думаешь что можно в принципе написать фреймворк C# для любой платформы?
Естественно! А что нам может помешать? Скажи пожалуйста, какие особенности C# могут помешать написать фреймворк на любой платформе?
S>>>>>5) C++ более гибкий язык -- вы можете программировать на уровне ассемблера, а можете использовать языковые средства сверхвысокого уровня. В случае с C# это не верно.
S>>>>Какие возможности С++ по программированию на уровне ассемблера отстутствуют в C#? Какие языковые средства сверхвысокого уровня С++ отстутствуют в C#? Чем можно безуспешно попытаться заменить метаинформацию в С++?
S>>>Любые средства C# можно успешно заменить средством C++.
S>>Перечитай вопрос. Приведи пример успешной замены метаинформации в C# эквивалентным средством С++.
S>Скажи конкретные вещи, как они должны работать и я тебе приведу аналог в C++.
Ну самое простое — есть приложение. К нему динамически подцепляются сборки (библиотеки). По команде пользователя создается инстанс произвольного класса из этой сборки, и вызывается произвольный метод по имени. Впрочем, зачем далеко ходить: давайте взглянем на .Net Explorer
Автор(ы): Андрей Мартынов
Дата: 24.12.2002
. Не мог бы ты воспроизвести его поведение средствами С++? Я подожду — в ближайшие год-два я не планирую уходить в оффлайн.
S>Я просто как раз-то и не понимаю сути вопроса. Ты можешь сказать конкретно что тебя интересует?
Вижу, что не понимаешь. Ты просто смотришь на C# через замочную скважину С++. Поэтому ты не видишь в нем почти что нихрена. Впрочем, именно про это была статья Пола Грэма. Это то же самое, как если бы чистый басик девелопер задавался вопросом "а нахрена нужен С++, если в нем нет даже номеров строк?!!"
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[90]: ToString()
От: slegkapjan  
Дата: 22.12.04 11:01
Оценка: -1
Здравствуйте, Sinclair, Вы писали:

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

S>>Зачем запрещать что-то? Между C++ и C# есть разница в философии построения языка.
S>А, ну то есть вместо доказательства "на с++ можно все" мы переходим к опровержению необходимости этого "всего". Все же почитай про CAS. Вкратце: это делается для того, чтобы вредоносный код не мог вызвать нехорошую вещь. Например, вирус, который ты выкачал из интернета под видом видеокодека, не сможет полезть управлять сервисами. Потому, что ему не дано такого разрешения. И это несмотря на то, что вирус выполняется под твоими пользовательскими привилегиями. На C# я помечаю опасный метод атрибутом, который говорит "здесь нужен специальный пермишшн". И код, которому не выдан пермишшн, не сможет вызвать этот метод.
А что может помешать вирусу модифицировать фреймворк и вызывать любые методы которые ему только вздумаются? Или же эта защита работает только для вриусов, написанных под .NET? При желании и для C++ можно придумать подобную защиту, и гораздо более действенную.

S>>Для большиства операционок небольшая часть кода написана на ассемблере, остальное на C++. Опять же C# использовать вместо C++ в этой связке невозможно.

S>Почему?
А потому, что нельзя определить что-то через него же самого. Нельзя написать фреймворк для C# на C#!

S>Ты написал, что любую C# программу ты сможешь заменить эквивалентной программой на С++, которая будет более быстрой. Тебе все еще неочевидно, что ты гонишь?

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

S>>А скажи пожалуйста, ты думаешь что можно в принципе написать фреймворк C# для любой платформы?

S>Естественно! А что нам может помешать? Скажи пожалуйста, какие особенности C# могут помешать написать фреймворк на любой платформе?
Т.е. ты утверждаещь, что, положим, можно написать фреймворк для PIC? Или для палмы с 300 килобайтами хипа?

S>Ну самое простое — есть приложение. К нему динамически подцепляются сборки (библиотеки). По команде пользователя создается инстанс произвольного класса из этой сборки, и вызывается произвольный метод по имени. Впрочем, зачем далеко ходить: давайте взглянем на .Net Explorer
Автор(ы): Андрей Мартынов
Дата: 24.12.2002
. Не мог бы ты воспроизвести его поведение средствами С++? Я подожду — в ближайшие год-два я не планирую уходить в оффлайн.

Знаешь, есть такая функция GetProcAddress() Вполне можно сделать нечто подобное и для классов.

S>>Я просто как раз-то и не понимаю сути вопроса. Ты можешь сказать конкретно что тебя интересует?

S>Вижу, что не понимаешь. Ты просто смотришь на C# через замочную скважину С++. Поэтому ты не видишь в нем почти что нихрена. Впрочем, именно про это была статья Пола Грэма. Это то же самое, как если бы чистый басик девелопер задавался вопросом "а нахрена нужен С++, если в нем нет даже номеров строк?!!"
Обязательно прочитаю.
Re[88]: ToString()
От: slegkapjan  
Дата: 22.12.04 11:27
Оценка: -1
D>Гуд. Рассуждаем дальше. Например, написание операционных систем — этот класс задач намного уже (читай, этим занимаются намного меньше людей) чем обычные бизнес системы.
D>Это значит, что ниша С++ должна стать и становится узкой за счет отбирание данной огромной области. Т.е. никто не говорит что С++ отстой. Просто в бизнесе ему делать нечего. Вот и все.
И с этим тоже согласен.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.