Resultados de la búsqueda a petición "macros"

1 la respuesta

¿Cómo implementar lambda como una función llamada "lambda" en Clojure?

Me gustaría poder definir lambdas usando la sintaxis común de Lisp, en Clojure. Por ejemplo: (lambda (myarg) (some-functions-that-refer-to myarg))Esto debe resultar en lo mismo que: #(some-functions-that-refer-to %)En mi caso, sé que siempre ...

4 la respuesta

c ++ macros con memoria?

¿Es posible definir macros? write_foo(A); and read_foo();así que eso: WRITE_FOO(hello); code_block_1; READ_FOO(); code_block_2; READ_FOO(); WRITE_FOO(world); code_block_3; READ_FOO(); code_block_4; READ_FOO();se expande en: code_block_1; ...

1 la respuesta

Expansión de términos para una lista de términos

Digamos que quiero tener una serie de reglas que sigan el mismo patrón. Me he encontrado con esta situación cuando quiero evitar un comportamiento no determinista enumerando explícitamente todos los primeros argumentos posibles. Sin embargo, sé ...

2 la respuesta

arity múltiple en defmacro de clojure

Encontré un problema extraño relacionado con defmacro en Clojure, tengo un código como (defmacro ttt ([] (ttt 1)) ([a] (ttt a 2)) ([a b] (ttt a b 3)) ([a b c] `(println ~a ~b ~c)))y corro con(ttt), se supone que se convierta(println 1 2 3)e ...

7 la respuesta

Ejemplos de para qué se pueden usar las macros de Lisp

He oído que el sistema macro de Lisp es muy poderoso. Sin embargo, me resulta difícil encontrar algunos ejemplos prácticos de para qué se pueden utilizar; cosas que serían difíciles de lograr sin ellas. ¿Alguien puede dar algunos ejemplos?

1 la respuesta

Evaluación múltiple involuntaria del parámetro en macro

¿Por qué el resultado de la segunda impresión es: máximo de 50 y 67 es 62? ¿Por qué no un máximo de 50 y 62 es 57? #define MAX(a,b) ((a)>(b) ? (a): (b)) int incr(){ static int i =42; i += 5; return i; } int _tmain(int argc, _TCHAR* argv[]) { int ...

3 la respuesta

Generar incluir el nombre del archivo en una macro

Estoy tratando de generar incluir el nombre del archivo en macro. Se supone que esto es legal en C ++: #define INCLUDE_FILE "module_impl_win.hpp" #include INCLUDE_FILEesto funciona bien, pero tan pronto como trato de generar el nombre del ...

2 la respuesta

Funciones de envoltura con macros (sin renombrar) C

Estoy interesado en agregar algo de lógica adicional alrededor de las llamadas a funciones existentes, envolviéndolassinrenombrándolos.(solo para una prueba). Las soluciones existentes que encontré se basan en ajustar una función en una macro ...

6 la respuesta

Versión C # de macro __FUNCTION__

¿Alguien tiene una buena solución para una versión C # de la macro C ++ __FUNCTION__? Al compilador no parece gustarle.

7 la respuesta

¿Cuándo la macro NULL no era 0?

Recuerdo vagamente haber leído sobre esto hace un par de años, pero no puedo encontrar ninguna referencia en la red. ¿Me puede dar un ejemplo donde la macro NULL no se expandió a 0? Editar para mayor claridad: hoy se expande a cualquiera((void ...