Perguntas com a marcação «macros»

As macros são usadas para disponibilizar uma sequência de instruções de computação ao programador como uma única instrução de programa, tornando a tarefa de programação menos tediosa e menos sujeita a erros. [

30
Qual é a origem do pré-processador C?

O pré-processador C é anexado a C, mas possui uma sintaxe completamente diferente da linguagem principal: espaço em branco sintaticamente significativo (o fim da linha termina uma instrução, intervalo após a macro determinar o início da lista de substituição) blocos baseados em palavras-chave em...

22
Qual a utilidade das macros Lisp?

O Lisp comum permite que você escreva macros que fazem a transformação de origem desejada. O esquema fornece um sistema higiênico de correspondência de padrões que permite executar transformações também. Quão úteis são as macros na prática? Paul Graham disse em Beating the Averages que: O...

18
Decoradores Python e macros Lisp

Ao olhar para os decoradores de Python, alguém fez a afirmação de que eles são tão poderosos quanto as macros Lisp (principalmente o Clojure). Olhando para os exemplos dados no PEP 318 , parece-me que eles são apenas uma maneira elegante de usar funções simples de ordem superior antigas no...

11
Tecelagem de código de bytes vs macros Lisp

Eu tenho lido sobre as bibliotecas que as pessoas escreveram para linguagens como Java e C # que utilizam tecelagem de código de bytes para fazer coisas como interceptar chamadas de função, inserir código de log etc. etc. Também estive lendo nas macros Lisp / Clojure tente entender melhor como...

7
Quando eu exigiria uma macro em vez de uma função?

Sou novo no Clojure, sou novo no Macros e não tenho experiência anterior no Lisp. Eu criei meu próprio caso de switch como formulário e acabei com isso: (defmacro switch-case [v cases default] (if (cases v) (cases v) default )) e então tentei criar uma função e acabei com isso: (defn...