Страница: 1 | 2 |
Бугагага! Теперь кто-то сомневается в будущем .NET? Поздравляю, вы получили еще одно [sensored], на котором вам ПРИДЕТСЯ программировать. То-то я смотрю Basic стал сам на себя не похож, а это к нему тот тип свою лапу приложил )) Никогда не думал что стану Паскакальщиком. ... И не стал Зачем лопату? Лучше пулемет. Страшно сомневаюсь, что асм-код на выходе будет собираться. К тому же IL после интерпретационной компиляции (вот какой я термин придумал, лишь бы Павел не ругался :D) все равно никакой не Native, т.к. содержит средства для того, чтобы FW мог управлять им и для того, чтобы код мог вызывать FW. А как эти средства мелкомягкие сделали - хз. А если Native их не содержит, тогда одно из утверждений: IL преобразуется в Native, собранные программы под .NET выполняются как управляемый код неверно. Следовательно, компиляция и интерпретация отличаются не характером и методами анализа и преобразования объектов программы, а совмещением фаз обработки этих объектов во времени. То есть при компиляции фазы преобразования и выполнения действий разнесены во времени, но зато каждая из них выполняется над всеми объектами программы одновременно. При интерпретации, наоборот, преобразование и выполнение действий объединены во времени, но для каждого объекта программы. Если посмотреть на эти различия несколько с другой стороны, то можно заметить, что интерпретатор непосредственно выполняет действия, связанные с определением или преобразованием объектов программы, а компилятор - переводит их на другой (не обязательно машинный язык). Отсюда можно сделать несколько выводов: - для выполнения программы, написанной на определенном формальном языке после ее компиляции необходим интерпретатор, выполняющий эту программу, но уже записанную на выходном языке компилятора; - процессор и память любого компьютера (а в широком смысле и вся программная среда, создаваемая операционной системой, является ИНТЕРПРЕТАТОРОМ машинного кода); - в практике построения трансляторов часто встречается случай, когда программа компилируется со входного языка на некоторый промежуточный уровень (внутренний язык), для которого имеется программный интерпретатор. Многие языковые системы программирования, называемые интерпретаторами, на самом деле имеют фазу компиляции во внутренне представление, на котором производится интерпретация. > Теперь-то понял, что это компилятор!!!??? Нет. Это не так. > Управление осуществляется на основе метаданных сборки, которые содержатся в IL. Управление машинным кодом возможно только в Ring0. Поскольку .NET там не было и нету, управление "PE-файлом с расширениями" присходит на основе IL-кода. Следовательно, при работе "скомпилированного" файла требуется его "исходник" на IL. Т.е. это интерпретация.
Вопрос: Интервью
Добавлено: 20.04.04 07:26
Автор вопроса: Павел | Web-сайт:
Инетесрное интервью с главным архитектором .Net и C# Андерсом
Хейлсбергом было опубликовано в журнале "Домашний компьютер". Для меня
стало новостью, что Андерс был автором компилятора Turbo Pascal и
работал в Borland :)
http://www.compulenta.ru/dk/offline/2004/91/31900/page2.html
Ответы
Всего ответов: 17
Номер ответа: 1
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 20.04.04 17:17
Номер ответа: 2
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #2
Добавлено: 20.04.04 18:47
Номер ответа: 3
Автор ответа:
@CyRax PTR
ICQ: 204447456
Вопросов: 28
Ответов: 664
Web-сайт:
Профиль | | #3
Добавлено: 21.04.04 05:08
Номер ответа: 4
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #4
Добавлено: 21.04.04 09:36
> То-то я смотрю Basic стал сам на себя не похож, а это к нему тот тип
> свою лапу приложил ))
А чем он вдруг стал на себя не похож??? Синтаксис практически не
изменился, за исключением удаления графических и пары других
операторов и добавления десятка новых... А библиотека классов .NET
Framework сделала его только лучше...
Номер ответа: 5
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #5
Добавлено: 21.04.04 11:51
Да уж.. Взять бы большую лопату, да двинуть в Рэдмонд
Номер ответа: 6
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #6
Добавлено: 21.04.04 23:54
Номер ответа: 7
Автор ответа:
Maxik
Вопросов: 58
Ответов: 201
Профиль | | #7
Добавлено: 22.04.04 06:54
В vs встроен дисассемблер (не путать ildasm),
который отображает асм код(il=>native=>asm).
Как вы думаете, если помудрить, то возможно создать не зависимую от fw
прогу?
Номер ответа: 8
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #8
Добавлено: 22.04.04 07:21
Номер ответа: 9
Автор ответа:
Maxik
Вопросов: 58
Ответов: 201
Профиль | | #9
Добавлено: 22.04.04 07:34
Конечно, методика копировать(vs)-вставить(masm) тут не подойдет...
Номер ответа: 10
Автор ответа:
Maxik
Вопросов: 58
Ответов: 201
Профиль | | #10
Добавлено: 22.04.04 08:36
>не Native, т.к. содержит средства для того, чтобы FW мог управлять им
Кстати, эти средства содержит il-код, а не native
Номер ответа: 11
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #11
Добавлено: 22.04.04 13:03
Номер ответа: 12
Автор ответа:
Maxik
Вопросов: 58
Ответов: 201
Профиль | | #12
Добавлено: 26.04.04 04:57
Теперь-то понял, что это компилятор!!!???
Управление осуществляется на основе метаданных сборки, которые
содержатся в IL.
Номер ответа: 13
Автор ответа:
@CyRax PTR
ICQ: 204447456
Вопросов: 28
Ответов: 664
Web-сайт:
Профиль | | #13
Добавлено: 26.04.04 06:28
Номер ответа: 14
Автор ответа:
Maxik
Вопросов: 58
Ответов: 201
Профиль | | #14
Добавлено: 26.04.04 10:05
@CyRax PTR
Почему ссылку на чужой источник не дал?
Номер ответа: 15
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #15
Добавлено: 26.04.04 22:50