Path: csiph.com!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Patricia Ferreira Newsgroups: pt.comp.programacao Subject: Re: sobre loops em common lisp Date: Wed, 28 Feb 2024 21:49:46 -0300 Organization: A noiseless patient Spider Lines: 39 Message-ID: <87ttlst7px.fsf@example.com> References: <87edcxza4m.fsf@example.com> <87le74la4b.fsf@lispclub.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: dont-email.me; posting-host="7aceb35bf76db477c63f1a7a842f180a"; logging-data="184933"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/+qvBqevqLJpXucRke7u8NKTTdVTxMk9Q=" Cancel-Lock: sha1:84Kmku8PbY3DUFnla0s/PYNProg= sha1:nWEPkfmZQwaa+Y0oJ2TVmDXiY1A= Xref: csiph.com pt.comp.programacao:259 Daniel Cerqueira writes: > Patricia Ferreira writes: > >> Finalmente aprendi a fazer uns laços básicos por aqui. >> >> Eis um loop infinito: >> >> (loop >> (format t "See you in never.~%")) >> >> Chamo de ``loop fechado'' aquele em que você sabe quando ele termina >> antes mesmo de começar: >> >> (dotimes (x 10 'done) >> (format t "x = ~a~%" x)) >> >> Chamo de ``loop aberto'' aquele que é feito com do: >> >> (do ((x 1 (1+ x)) >> (y 10 (1- y))) ;; sua lista de variáveis a iterar >> (when (satisfied?) 'done) ;; quando termina? >> (format t "x = ~a, y = ~a~%" x y)) >> >> É difícil escrever quando a gente não conhece a linguagem. Mais uma >> razão pra eu amar Lisp---mesmo sem conhecer, estou me divertindo como >> nunca. Incrível. Grande agradecimento ao GNU EMACS, SLIME, SBCL. Mais >> importante, muito obrigado à primeira pessoa que me chamou a atenção de >> Lisp. > > Oi Patricia. O PCL explica isso dos loops. O livro está aberto online em > https://gigamonkeys.com/book/ . > > Bons processamentos. Thanks. Vou ler o ``LOOP for black belts''. Mas não sei se pretendo usar esses truques todos, não. Parece difícil de entender como essas coisas funcionam. Ainda não sei o que vai acontecer. De repente vou usar pra caramba. :)