Публикации по теме 'compilers'
Недооцененная жемчужина: typescript-rtti
Представьте себе, что у вас есть возможность перенести информацию о типах во время выполнения в TypeScript, что позволит вам динамически проверять типы и манипулировать ими способами, которые вы никогда не считали возможными. Давайте отправимся в путешествие в глубины этого мощного инструмента, раскроем его скрытый потенциал и продемонстрируем, насколько полезным он может быть.
Что такое машинописный текст-rtti?
Тот факт, что JavaScript — динамический язык и не имеет собственной..
Первый пример кода C++ и изложение
Вот строки кода, с которыми мы будем работать:
#include ‹iostream› с использованием std::cout;
int main() { cout ‹‹ «Привет!» ‹‹ «\n»;
#include ‹iostream›
фунт: ' # ' из # включая line — это директива препроцессора, которая указывает компилятору включить библиотеку до того, как он начнет компилировать программу.
‹iostream›
iostream – это название библиотеки, которая является частью стандартных библиотек C и стандартных библиотек,..
В чем разница между компилятором и интерпретатором?
Компилятор против интерпретатора:
В компьютерных науках компилятор и интерпретатор — это два разных инструмента, используемых в программировании. Они служат для преобразования высокоуровневого кода в машиноисполняемые инструкции, но используют разные подходы и методы выполнения.
Компилятор:
Компилятор работает, беря весь исходный код в качестве входных данных и одновременно переводя его в исполняемую форму. Он проходит ряд этапов, включая лексический анализ, синтаксический..
Анализ процесса компиляции языка программирования C
Что происходит в терминале при вводе:
$ gcc main.c
Ну, если у вас нет файла main.c в вашем текущем рабочем каталоге, вы, вероятно, получите сообщение об ошибке. :)
Однако, если серьезно, давайте разберем шаги, которые обычно выполняются в процессе компиляции этого main.c файла, при условии, что в исходном коде C нет ошибок.
Компиляция исходного кода C в конечном итоге даст вам исполняемый двоичный файл, который вы можете запустить в терминале, чтобы увидеть вывод файла...
Codon: компилятор Python
Информатика
Codon: компилятор Python
Компиляция python в машинный код с помощью компилятора LLVM.
У Python в течение многих лет не было хорошего компилятора, который компилировал бы эффективный машинный код. Python сам по себе не самый быстрый язык, а нативный код C превосходит его во много раз. Для систем реального времени, игр, симуляций, обработки сигналов и приложений для научных вычислений без таких библиотек, как numpy, базовый python слишком медленный. Были и другие..
Информация о типе среды выполнения для JavaScript
Chrome V8 теперь может собирать информацию о типе во время выполнения
Получите такие типы, как строка, число, null или настраиваемые классы во время выполнения. V8 теперь может собирать информацию о типе. V8 - это движок JavaScript с открытым исходным кодом от Google. Chrome, Node.js и многие другие приложения используют V8. Профайлер этого типа встроен в движок, информация не выводится статически.
JavaScript - это язык с динамической типизацией. Но большая часть кода написана с..
Как Cheerp поддерживает 64-битные целые числа в JavaScript и WebAssembly
Недавно я улучшил поддержку 64-битных целых чисел в Cheerp , компиляторе C / C ++ в WebAssembly / JavaScript.
В этом посте я объясню, почему поддержка 64-битных целых чисел требует особого внимания, что Cheerp делал в прошлом, почему текущая ситуация лучше и что мы сможем сделать в будущем для дальнейшего улучшения поддержки.
О Cheerp
Cheerp - это компилятор C / C ++ в WebAssembly / JavaScript, аналогичный Emscripten. Его основное внимание уделяется лучшей совместимости с..