Публикации по теме 'metaprogramming'
Магия метапрограммирования: часть первая
вступление
Всем привет! У меня появился интерес к метапрограммированию на Ruby — поэтому я хочу написать об этом. Предстоит осветить тонну , поэтому я собираюсь сделать серию коротких постов. Вот так!
Метод #отправить
Знаете ли вы, что вы можете выполнить метод для любого объекта Ruby, передав имя метода в виде символа в качестве аргумента методу #send?
Давай попробуем!
001 > 1.send(:to_s)
=> "1"
002 > "hello".send(:upcase)
=>..
Мета-программирование на Python
Краткое руководство по декораторам и метаклассам
Недавно я столкнулся с очень интересной концепцией - метапрограммированием на Python . Я хотел бы поделиться своими выводами по этой теме в этой статье. Я надеюсь, что это поможет вам осознать это, потому что они говорят, что это крепкий орешек.
Что такое метапрограммирование?
Итак, одной строкой: «Мета-программирование - это акт написания кода, который манипулирует кодом».
Чего ждать? Да, вы правильно прочитали. Код,..
Постижимые макросы Rust
Разбор внутренней работы и авторства макросов в Rust
Макросы Rust — это конструкции времени компиляции, которые работают с потоками токенов языка Rust.
Коротко о компиляции
Что такое «токены языка Rust»?
Когда компилятор начинает компилировать программу, он сначала читает файл исходного кода. Для простоты предположим, что компилятор хранит этот исходный код в строке. Следующий шаг — пройтись по строке, символ за символом, и разделить ее на «токены».
Например, фрагмент Rust,..
Декоратор внутри класса Python
Предположим, нам нужен декоратор, который мы будем использовать только внутри одного определенного класса. Что-то вроде этого:
Где определить этот декоратор?
Функция внутри класса
Немедленное побуждение состоит в том, чтобы поместить atomic_rating_change в сам класс:
Это действительно сработает, но в этом подходе есть серьезный недостаток: atomic_rating_change становится методом экземпляра класса User . В этом нет никакого смысла. Более того, он даже не работает как..
Метапрограммирование в Ruby: плюсы, минусы и подводные камни
Ruby известен своими возможностями метапрограммирования, которые позволяют разработчикам писать код, который пишет код. Эту мощную функцию можно использовать для автоматизации повторяющихся задач, создания динамического и гибкого кода и создания пользовательских предметно-ориентированных языков (DSL). Однако, как и любой мощный инструмент, метапрограммирование в Ruby может иметь свои плюсы, минусы и подводные камни.
Плюсы метапрограммирования в Ruby:
Производительность...
Метапрограммирование Ruby
Введение: Эпи 1
Привет ! Всем, сегодня мы поговорим об удивительной функции метапрограммирования в Ruby.
Метапрограммирование в целом - это языковая функция, с помощью которой вы пишете код, который пишет код. Метапрограммирование - это, по сути, написание кода, который пишет код.
Но разве не этим занимаются генераторы кода и компиляторы? Например, вы можете написать аннотированный код Java, а затем использовать генератор кода для вывода файлов конфигурации XML.
В широком смысле..
В этой теме я расскажу о метапрограммировании в Javascript.
В этой теме я расскажу о метапрограммировании в Javascript. Если мы сначала погуглим, мы увидим это определение в Википедии:
Метапрограммирование – это метод программирования, при котором "компьютерные программы" могут обращаться с другими программами как со своими данными. Это означает, что программа может быть спроектирована так, чтобы читать, генерировать, анализировать или преобразовывать другие программы и даже изменять себя во время работы.
Короче говоря,..