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


Макрос для новых сопоставлений с образцом
В последнем посте я очень быстро объяснил, как работает сопоставление с образцом в Racket и как создавать новые образцы. Тем не менее, есть небольшой шаблонный код, который меня беспокоит. Это «макровещь», которая напрямую не связана с созданием новых паттернов. Итак, я создаю макрос, чтобы удалить этот макрос из представления. Эээ… что-то мне подсказывает, что это не самый разумный подход, но… =/ Вот новый шаблон для сопоставления вещей, вложенных в списки: Мой макрос прост..

Переосмысление электронных таблиц: программирование
Переосмысление электронных таблиц: программирование Является ли использование электронных таблиц таким же, как программирование? Это спорно * . Это правда, что программирование не равнозначно вводу данных, но ввод данных является частью программирования. Вот как ваш компьютер узнает об алфавите или о часовых поясах по всему миру: кто-то должен был ввести эти данные в программу. Потом формулы. Табличные формулы могут сложным образом комбинировать данные, и у них есть..

Концепции Rust: макросы
Макросы — это мощная функция языка программирования Rust, которая позволяет разработчикам писать код, который генерирует другой код во время компиляции. Это отличный инструмент для сокращения стандартного кода и обеспечения возможности повторного использования кода. В этом уроке мы рассмотрим несколько инновационных способов использования макросов в Rust. 1. Предметно-ориентированные языки (DSL) Одним из наиболее мощных применений макросов Rust является создание..

Memoize и Cache в Джулии
Используйте динамическое программирование, чтобы сделать ваши функции быстрее Мемоизация — это простой прием в программировании, при котором вы уменьшаете количество необходимых вычислений, запоминая некоторые прерывистые результаты. Здесь я покажу вам, как сделать это в Julia самым простым способом . 🙏 Огромное спасибо тем, кто сделал Memoize.jl Посмотрите репозиторий здесь . Быть наивным Мы начнем с простой функции Фибоначчи и посмотрим, насколько медленно она может..

Строгая C++ MACRO
Знаете ли вы, что вы также можете преобразовать MACRO в строку? Иногда вы хотите преобразовать аргументы MACRO в строковую константу. Это достигается за счет стробирования MACRO. «Стрингификация» означает преобразование фрагмента кода в строковую константу, содержимым которой является текст фрагмента кода. Например, преобразование foo (z) в строку приводит к “foo (z)” . В препроцессоре C и C++ строковое преобразование доступно, когда аргументы макроса подставляются в..

Пишите меньше, кодируйте больше
Я уверен, что вы слышали слово «X Macro» в C, которым вы можете подытожить общий код вашего конкретного раздела в вашей программе. Я использую ту же концепцию, чтобы уменьшить количество строк в моем (визуальном) коде и позволить компьютеру писать код за меня. Прежде чем перейти к примеру, просто посмотрите на определение X-macro. X-Макро X-Macros основаны на свойстве вложенных макросов и возможности определять макросы внутри других макросов. X-Macros — очень мощный метод..

Правила сборки Xcode для разных вариантов одного и того же файла .swift
Работая над фреймворком Swift SDK, я столкнулся со следующей проблемой: некоторым клиентам нужен доступ к большому набору функций из SDK, а другим - только к их подмножеству. Это означало, что один и тот же протокол / расширение / класс / перечисление было помечено как общедоступное для этих продвинутых клиентов и внутреннее для других. Первый подход заключался в использовании макросов препроцессора Swift # if / # else / # endif , но их функциональность ограничена. Возьмем, к..