IA72 писал(а): google ваш друг. Сам не мерил, но читал. Не думаю, что разница существенна, но утверждать, что ее нет и не может быть - это ошибка и непонимание.
Ибо перевод кода в нативный осуществляется в два этапа - language-->il и il--> native.
Я тоже читал

Только обоснование этого утверждение было такое же как у Вас

Кроме общей идей, что С код
должен быть быстрее других конкретных данных я не видел. И я не говорю, что не может быть разници. Я ж писал - теоретически, может. Ну, скажем, если группа делавшая VB прекомпилятор существенно слабее группы делавшей С# прекомпилятор. Только я в это не верю. Microsoft достаточно серьезная фирма для этого. И никто подобного пока не показал.
Да, но речь о принципе.
Да не о принципе, а о разработке конкретного проекта. Мы можем тут месяц сидеть и выискивать различия, спорить о их значении. А для проекта в реальной жизни разница есть? Нет. Тогда зачем дурью маяться?
Не согласен - синтаксис c# прост, но изучение его поможет писать правильно, а не слепо копировать старый код с VB
Это прекрасно в теории - "писать правильно, а не слепо копировать". А когда у Вас здоровый проект и надо его портировать в заданные сроки - очень может оказаться, что все время и усилия уйдут на то, чтобы просто переписать его в новом синтаксисе. И ни до какого "правильно" просто дело не дойдет. Мой бывший шеф любил рассказывать про проект, оторый он как-то видел на Java. Человек, его делавший, переводил его с COBOL и сам был из мира COBOL. Так вот он как на коболе и писал на Java. Синтаксис-то он освоил а вот дальше дело не пошло. Вы понимаете, когда время ограничено, его можно потратить только один раз - или чтобы переписать все строчки, или чтобы разобраться со структурой.
Я ж говорю - ели время - не фактор -тогда дело другое.
Я не обижаюсь - это вы не понимаете. Погуглите keyword unsafe и перестаньте говорить глупости.
А, значит Вы работу с поинтерами наружу имеете в виду. Но работа с понтерами - это нечто, противоречащее идеологии NET. Я не сомневаюсь, что в Microsoft были жаркии баталии, следует ли сохранять эту возможность C в C# и делать дырочку. И пошли на компромис чтобы "облегчить горемыкам с C переход"

Пожертвовали структурной чистотой ради обратной совместимости - так же как и в лучаях с VB. В java, скажем, на такой компромис не пошли и ничего.
Кстати это ведь уступка этой самой реальности, а?

Ведь все мы знаем, что так делать "не правельно". Правельно было бы переписать такие вещи заново, с чистого листа а?

Вот, кстати, очень толковый пост, суммаризирующий разницу между языками с очень полезными ссылками:
http://www.mail-archive.com/bdotnet@gro ... 01543.html Что касается "если Il" поддерживает, то это тем более ерунда, ибо язык не обязательно должен (и так и происходит) поддерживать фичи .net runtime
Да, разумеется. В общем случае язык не обязан поддерживать все фичи. Но за созданием VB.NET и С# стоит определенная идеология. Смысл которой - именно реализовать в обоих языках все основные возможности runtime. Я не возьмусь утвержать того же, скажем о COBOL.net
vovap писал(а): Могли бы и делали. Ибо старались облегчить горемыкам с VB переход,
чего стоит история с boolean.
Нет, не включение каких-то возможностей не облегчает переход - чего не знаеш, то тебе не мешает. Для облегчения перехода наоборот, сохраняли старые фитчес и элементы.