Arquivo da tag: Lisp

Things to do in Emacs 22: regexp

Stevey’s Blog Rants: Shiny and New: Emacs 22

It’s just like a normal M-x {query-}replace-regexp, but you’ll prefix any lisp expressions in the replacement string with the sequence `\,’ (i.e., a backslash and a comma). In this case, we match the whole word, and invoke the Emacs-Lisp function `capitalize’ to capitalize the word we just matched:
M-x replace-regexp
Replace regexp: \(\w+\)
Replace regexp with: \,(capitalize \1)

The Nature of Lisp

The Nature of Lisp [defmacro.org]
English version below.
Excelente introdução à linguagem Lisp. O autor passa boa parte do texto comparando a linguagem Lisp com o formato XML, o que a princípio soa estranho, mas logo logo dá pra ver onde ele quer chegar. Para iniciantes ou curiosos como eu, que ainda estou dando os primeiros passos nesta linguagem. Ah, e não deixe de visitar o site do Lisp-BR.
Excellent introduction to the Lisp language. The author initially compares Lisp to the XML data format, which at first sounds strange, but soon you realize what he wants you to understand. To the Lisp newbies or curious ones that, just like me, are still making their first steps into Lisp.

First steps in Lisp

“Lisp é uma linguagem de programação programável.”
— John Foderaro
Estive tendo um pouco de contato com Lisp e Scheme desde ano passado, por conta de um projeto de pós-graduação. Eis algumas impressões minhas sobre a linguagem Lisp.
Sendo um membro do grupo de linguagens chamadas funcionais, Lisp é um pouco diferente das linguagens a que a maioria dos programadores está acostumada. Para um programador acostumado a outras linguagens aprender a programar em Lisp, é preciso uma mudança na forma de raciocinar.
Linguagens de programação ‘comuns’ (também chamadas de imperativas) enfatizam como uma coisa deve ser feita. Linguagens funcionais enfatizam o que deve ser feito. Elas lidam com mais abstrações do que as outras linguagens, que lidam com conceitos mais próximos do “maquinário”.
Um dos recursos mais poderosos de Lisp é a capacidade de manipular dados sob forma de listas. Algumas dessas idéias foram absorvidas pela linguagem Python: vide as funções map() e filter().
Comparison between Python and Lisp: Python for Lisp programmers