visual tutorial trabajar para hacer ejemplos con como macros julia-lang

macros - tutorial - Julia: ¿Cómo creo una macro que devuelve su argumento?



vba excel pdf (1)

Mi pregunta es bastante similar a esta , pero con una diferencia. Quiero crear una macro (o lo que sea) que se comporte de esta manera:

julia> @my-macro x + 2 :(x + 2)

(tenga en cuenta que x + 2 no está entre comillas). ¿Hay algo así en Julia? Y si no hay, ¿cómo lo hago? (Por favor, brinde una explicación detallada de por qué funciona).


La expresión de entrada a la macro debe citarse porque una macro devuelve una expresión, que se evalúan, mientras que usted desea obtener la expresión en sí misma, por lo tanto, necesita una cotización adicional. Las citas se pueden hacer como:

macro mymacro(ex) Expr(:quote,ex) # this creates an expression that looks like :(:(x + 2)) end e=@mymacro x + 2 #returns :(x + 2)