Вопросы с тегом «compiler-construction»

97
Eclipse: включить утверждения

Я использую Eclipse Galileo. Как включить утверждения в Eclipse? По предложению других сайтов, я попытался добавить аргументы: -ea. Я также попытался изменить уровень соответствия компилятора на 1.4. Ни одно из этих предложений не сработало....

96
Проблемы с компиляцией, сборкой или архивированием с Xcode 4 (и зависимостями)

Этот вопрос развился за последние несколько недель, чтобы охватить более общие проблемы с xcode4 (и модернизация проектов из более старых xcodeс). Однако многие проблемы можно решить, следуя тем же инструкциям. Если у вас есть какие-либо из следующих проблем, попробуйте методы, указанные в...

96
Почему этот код Java компилируется?

В области метода или класса следующая строка компилируется (с предупреждением): int x = x = 1; В области класса, где переменные получают значения по умолчанию , следующее дает ошибку «неопределенная ссылка»: int x = x + 1; Разве не первая x = x = 1должна закончиться той же ошибкой «неопределенная...

96
Начальная загрузка по-прежнему требует внешней поддержки

Я слышал об идее начальной загрузки языка, то есть написания компилятора / интерпретатора для языка как такового. Мне было интересно, как это можно сделать, и я немного огляделся и увидел, что кто-то сказал, что это можно сделать только написание исходного компилятора на другом языке. ручное...

95
Какие шаблоны я могу применить к коду, чтобы упростить перевод на другой язык программирования? [закрыто]

Закрыто . Этот вопрос должен быть более конкретным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он фокусировался только на одной проблеме, отредактировав этот пост . Закрыт 5 лет назад . Уточните этот вопрос Я собираюсь выполнить побочный проект,...

94
Детерминировано ли создание файлов классов Java?

При использовании одного и того же JDK (т.е. одного и того же javacисполняемого файла) всегда ли сгенерированные файлы классов идентичны? Может быть разница в зависимости от операционной системы или оборудования ? Могут ли быть какие-то различия, кроме версии JDK? Есть ли какие-либо параметры...

94
реализация вывода типа

Я вижу здесь несколько интересных дискуссий о статической и динамической типизации. Обычно я предпочитаю статическую типизацию из-за проверки типа компиляции, лучшего документированного кода и т. Д. Однако я согласен с тем, что они действительно загромождают код, например, так, как это делает...

93
Как подойти к созданию языка программирования JVM?

Я создал компилятор на C (используя Lex & Bison) для языка программирования с динамической типизацией, который поддерживает циклы, объявления функций внутри функций, рекурсивные вызовы и т. Д. Я также создал виртуальную машину, которая запускает промежуточный код, созданный компилятором. Я...

92
Компиляция против транспилирования

В поисках разницы я наткнулся на следующие определения: Компиляция - это общий термин для преобразования исходного кода, написанного на одном языке, в другой. Транспилирование - это особый термин для преобразования исходного кода, написанного на одном языке, в другой язык, имеющий аналогичный...

90
Действительно ли парсеры GCC и Clang написаны от руки?

Похоже, что GCC и LLVM-Clang используют рукописные рекурсивные анализаторы спуска , а не машинно-сгенерированные, восходящие парсеры на основе Bison-Flex. Может ли кто-нибудь здесь подтвердить, что это так? И если да, то почему основные среды компиляторов используют рукописные синтаксические...

89
Компиляторы создают лучший код для циклов do-while по сравнению с другими типами циклов?

В библиотеке сжатия zlib (которая среди многих других используется в проекте Chromium) есть комментарий, который подразумевает, что цикл do-while в C генерирует «лучший» код для большинства компиляторов. Вот фрагмент кода, где он появляется. do { } while (*(ushf*)(scan+=2) == *(ushf*)(match+=2)...

89
Как ядро ​​Linux может скомпилироваться?

Я не совсем понимаю процесс компиляции ядра Linux, когда устанавливаю систему Linux на свой компьютер. Вот что меня смутило: Ядро написано на C, однако как ядро ​​было скомпилировано без установленного компилятора? Если компилятор C установлен на моем компьютере до компиляции ядра, как компилятор...

88
Почему проще написать компилятор на функциональном языке? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы на него можно было ответить с помощью фактов и цитат, отредактировав этот пост . Закрыт 2 года назад . Уточните этот вопрос Я очень долго думал над этим вопросом,...

86
В чем разница между токеном и лексемой?

В «Конструировании компилятора» Ахо Уллмана и Сетхи указано, что входная строка символов исходной программы делится на последовательность символов, имеющих логическое значение и называемых токенами, а лексемы - это последовательности, составляющие токен, и что в чем принципиальная разница?...

86
Где я могу изучить основы написания лексера?

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

84
объединить два скомпилированных GCC объектных файла .o в третий .o файл

Как объединить два объектных файла .o, скомпилированных GCC, в третий файл .o? $ gcc -c a.c -o a.o $ gcc -c b.c -o b.o $ ??? a.o b.o -o c.o $ gcc c.o other.o -o executable Если у вас есть доступ к исходным файлам, -combineфлаг GCC объединит исходные файлы перед компиляцией: $ gcc -c -combine a.c...

84
Почему GDB непредсказуемо перескакивает между строками и выводит переменные как «<оптимизированное значение>»?

Может ли кто-нибудь объяснить такое поведение gdb? 900 memset(&new_ckpt_info,'\0',sizeof(CKPT_INFO)); (gdb) **903 prev_offset = cp_node->offset;** (gdb) **905 m_CPND_CKPTINFO_READ(ckpt_info,(char *)cb->shm_addr.ckpt_addr+sizeof(CKPT_** HDR),i_offset); (gdb) **903 prev_offset =...