Включает ли компиляция, которая генерирует промежуточный байт-код (как в Java), вместо того, чтобы идти «полностью» до машинного кода, как правило, меньшую сложность (и, следовательно, скорее всего, она занимает меньше времени)?...
Включает ли компиляция, которая генерирует промежуточный байт-код (как в Java), вместо того, чтобы идти «полностью» до машинного кода, как правило, меньшую сложность (и, следовательно, скорее всего, она занимает меньше времени)?...
Когда программирование в CI показало, что упаковывать структуры, используя __attribute__((__packed__))атрибут GCCs, неоценимо, я могу легко преобразовать структурированный кусок энергозависимой памяти в массив байтов, который будет передаваться по шине, сохраняться в хранилище или применяться к...
Мой преподаватель класса Микропроцессор дал нам задание и сказал: «Напишите ассемблер в Си» - Мой любимый профессор Так что это показалось мне немного нелогичным. Если я не ошибаюсь, язык ассемблера - это первый шаг от машинного кода к путешествию на языки более высокого уровня. Я имею в виду, что...
Почему? В зависимости от вашего источника, компилятор Intel может быть или, скорее всего, компилятором, генерирующим самые быстрые исполняемые файлы для архитектуры x86 (улучшение времени выполнения на 5-100%). Intel бесплатно предлагает свои компиляторы для Linux по некоммерческой лицензии (думаю,...
Я пытаюсь лучше понять, что потребуется компилятору, чтобы он мог сделать разумный выбор в отношении параллелизма от имени программиста. Я понимаю, что есть много сложных аспектов этой проблемы, например: Обеспечение отсутствия условий гонки Обеспечение того, чтобы код, выполняемый одновременно, не...
Я не планирую писать компилятор в ближайшем будущем; Тем не менее, я весьма заинтересован в технологиях компиляции и в том, как сделать это лучше. Начиная с компилируемых языков, большинство компиляторов имеют два уровня ошибок: предупреждения и ошибки, первый из которых состоит в большинстве...
Это часть серии вопросов, посвященных проекту под названием «Проект абстракции», целью которого является абстрагирование понятий, используемых в языковом дизайне, в форме фреймворка. Другая связанная с ним страница, связанная со структурной типизацией, может быть просмотрена здесь . Мета-тема,...
Допустим, я хотел создать динамический языковой компилятор / интерпретатор, возможно интерпретатор Scheme, на платформе .NET, как он существует сегодня. Будет ли мне лучше использовать Dynamic Language Runtime (DLR) или использовать C # 4.0 для реализации динамических функций моего языка? Или мне...
В динамических языках, таких как JavaScript или Python, тип переменной определяется во время выполнения. Это одна из причин, почему они медленнее, чем типизированные языки, такие как Java. Как выполняется проверка типа? Какова основная причина медленного...
Я понимаю, что компиляторы C ++ не совместимы друг с другом. Однако я не смог найти что-либо по этой теме для C, в частности. Я знаю, что стандарт C оставляет много возможностей для реализации компиляторами, как они считают нужным: например, размер и выравнивание большинства (всех?) Типов данных...
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 5 лет назад . Есть 2 аргумента для наличия общих библиотек: Это помогает уменьшить...
Я учусь на третьем курсе по программной инженерии. С этого года мой университет ввел новый курс под названием «Конструкции компилятора», который обучает вас основам теории построения компилятора. Какое будет реальное преимущество для программиста в изучении конструкции...
Недавно я взял на себя задачу написания стекового языка программирования. Однако прежде чем приступить к разработке своего языка, я подумал, что было бы неплохо прочитать и поэкспериментировать с существующими языками, основанными на стеке. Это подводит меня к теме этого поста. Я читал статью в...
Закрыто. Этот вопрос не по теме . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения стека Exchange. Закрыто 4 года назад . Я не бакалавр компьютерных наук и работаю веб-разработчиком (Java,...
В настоящее время я реализую оценщик выражений (однострочные выражения, например формулы), основанный на следующем: введенное выражение токенизируется для разделения буквенных логических значений, целых чисел, десятичных дробей, строк, функций, идентификаторов (переменных) Я реализовал алгоритм...
Это часть серии вопросов, посвященных проекту, связанному с проектом Abstraction Project, целью которого является абстракция концепций, используемых в языковом дизайне, в форме фреймворка. Родственный проект называется OILexer, целью которого является создание синтаксического анализатора из файлов...
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 6 лет назад . Это может быть странный вопрос. Парень, пишущий компилятор C ++ (или любой...
Было ли изменение языка, которое требовало этого, или какая-то практическая причина, по которой Бизон больше не был подходящим или оптимальным? Я видел в википедии, что они переключились, ссылаясь на примечания к выпуску GCC 3.4 и GCC 4.1 . Эти примечания к выпуску гласят: Рукописный синтаксический...
Начиная с версии 4.8, компилятор C ++ GCC (часть G ++) написан уже не на C, а на самом C ++. У меня есть гипотетический вопрос по этому вопросу. Интересно, как скомпилировать код C ++ GCC на новой платформе, у которой еще нет компилятора C ++. Конечно, вы можете использовать готовые двоичные файлы,...
Я разработчик C ++ и в попытке лучше понять кроссплатформенную разработку, я пытаюсь лучше понять некоторые детали реализации компиляторов и то, как именно они создают специфичные для ОС двоичные файлы. В разгар своего исследования я понял, что, по крайней мере, какое-то время большинство...