metaprogramming
учитывая лямбда, можно ли выяснить, что это тип параметра и тип возврата? Если да, то как? в принципе, я хочу, чтобы lambda_traits который может быть использован следующим образом: auto lambda = [](int i) { return long(i*10); }; lambda_traits<decltype(lambda)>::param_type i; //i should be int lambda...
статическое метапрограммирование (он же "шаблон метапрограммирования") является отличным методом C++, который позволяет выполнять программы во время компиляции. Как только я прочитал этот канонический пример метапрограммирования, у меня в голове загорелась лампочка: #include <iostream> using namespace...
пони ОРМ делает хороший трюк преобразования выражения генератора в SQL. Пример: >>> select(p for p in Person if p.name.startswith('Paul')) .order_by(Person.name)[:2] SELECT "p"."id", "p"."name", "p"."age" FROM "Person" "p" WHERE "p"."name" LIKE "Paul%" ORDER BY "p"."name" LIMIT 2 [Person[3...
Я читал статью о TheServerSide на ployglot программирование на платформе Java. Некоторые комментарии в статье относятся к метапрограммированию как к способности генерировать код (возможно, на лету). метапрограммирование способность генерировать код на лету или это способность вводить методы и атрибуты в сущ...
в настоящее время я в основном D программист и я ищу, чтобы добавить другой язык в мой инструментарий, предпочтительно тот, который поддерживает метапрограммирование хаки, которые просто не могут быть сделаны в статически скомпилированном языке, как D. Я немного читал о Lisp, и мне бы хотелось найти язык, ко...
В общем, как я могу получить ссылку на объект, имя которого у меня в строке? более конкретно, у меня есть список имен параметров (переменные - члены, построенные динамически, поэтому я не могу ссылаться на них напрямую). каждый параметр является объектом, который также имеет from_s метод. Я хочу сделать чт...
Я прочитал в нескольких разных местах, что с помощью новых строковых литералов C++11 можно было бы вычислить хэш строки во время компиляции. Однако никто, кажется, не готов выйти и сказать, что это будет возможно или как это будет сделано. это возможно? как будет выглядеть оператор? меня особенно интерес...
насколько мне известно, есть три способа динамического вызова метода в Ruby: Способ 1: s = SomeObject.new method = s.method(:dynamic_method) method.call Способ 2: s = SomeObject.new s.send(:dynamic_method) Способ 3: s = SomeObject.new eval "s.dynamic_method" путем сравнения их я установил, что метод...
в качестве упражнения по программированию я написал фрагмент Ruby, который создает класс, создает два объекта из этого класса, monkeypatches один объект и полагается на method_missing для monkeypatch другой. вот в чем дело. Это работает по назначению: class Monkey def chatter puts "I am a chattering...
можно определить статический массив во время компиляции следующим образом: const std::size_t size = 5; unsigned int list[size] = { 1, 2, 3, 4, 5 }; Вопрос 1 - можно ли с помощью различных методов метапрограммирования присваивать эти значения "программно" во время компиляции? Вопрос 2 - предполагая, чт...