Публикации по теме 'compilers'


Машинопись написана на ... Машинописи ?: Взгляд на то, как языки написаны на их собственном языке.
Вы можете удивиться, узнав, что C в основном написан на C, что Java написана на Java и что Typescript написан на ... Typescript! Многим это кажется технологической версией вопроса «что появилось раньше, курица или яйцо?» вопрос. Конечно, это кажется противоречием - если C написано на C, разве C уже не должен существовать? Почему мы пишем новые языки? Прежде чем мы сможем исследовать, как разрешается эта загадка, мы должны сначала спросить себя, зачем вообще вообще создаются новые..

Является ли модульное тестирование самым большим дублированием усилий в истории человечества?
Вот мысленное упражнение. Вы разработчик JavaScript, Ruby, Python или PHP. Следовательно, в вашем языке нет почти чего-либо во время компиляции. Фактически, ваш язык даже не требует этапа компиляции. В некоторых случаях вы не узнаете о синтаксических ошибках, пока не запустите код. Вы ответственный разработчик, поэтому пишете тесты. Потому что это то, что делают ответственные разработчики. Продолжая это мысленное упражнение: что вы проверяете? Вероятно, такие случаи, среди..

Как PVS-Studio выполняет поиск ошибок: методы и технологии
PVS-Studio - статический анализатор кода, который ищет ошибки и уязвимости в программах, написанных на языках C, C ++ и C #. В этой статье я расскажу о технологиях, которые мы используем в анализаторе PVS-Studio. Помимо общей теоретической информации, я покажу практические примеры того, как определенные технологии позволяют обнаруживать ошибки. Введение Поводом для написания статьи послужил мой доклад об открытой конференции ISPRAS OPEN 2016, которая прошла в начале декабря в..

Внутренние типы в TypeScript
Несмотря на то, что понятие внутренних типов может сбить с толку читателя, я не буду определять их сразу, так как хочу представить концепцию на практическом примере. Я бы хотел начать статью со следующего вопроса, который я задавал себе в разных формах на протяжении многих лет: В идеальном языке со статической типизацией, как можно определить строковый тип использования заглавных букв, используя свойства его системы типов? Я мог бы заменить заглавные буквы на перестановку строк , и..

Написание кода на C? Упростите свою жизнь с sim-C
Если вы работаете с C или когда-либо работали с C, то вы знаете, насколько неприятным может быть написание этих длинных и (иногда) сложных синтаксисов и сколько времени может потребоваться отладка кода только из-за чего-то столь же простого, как неуместная точка с запятой. Хотя мы искренне верим, что C - один из самых мощных и эффективных языков, когда-либо созданных, иногда это может быть непросто для непрограммистов. В этой статье мы расскажем вам о sim-C , инструменте, который..

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

Сообщения компилятора F #
Сообщения компилятора F # Что ж, 2020 год, пришло время для моего ежегодного (F #) сообщения в блоге. Я написал свой первый пост на FsAdvent в 2018 году . А потом я написал еще один пост в 2019 году . Итак, что же произошло в моем мире F # с тех пор? Во-первых, я присоединился к потрясающей компании Quicken Loans, чтобы заниматься F # на постоянной основе. Это было потрясающе! Я также снова подписался на последний раунд Программы наставничества F # Software Foundation - на..