Groups | Search | Server Info | Login | Register


Groups > pt.comp.programacao > #269

Re: sobre loops em common lisp

Path csiph.com!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From Patricia Ferreira <pferreira@example.com>
Newsgroups pt.comp.programacao
Subject Re: sobre loops em common lisp
Date Tue, 05 Mar 2024 19:50:55 -0300
Organization A noiseless patient Spider
Lines 51
Message-ID <87v860qomo.fsf@example.com> (permalink)
References <87edcxza4m.fsf@example.com> <87le74la4b.fsf@lispclub.com> <87ttlst7px.fsf@example.com> <878r2wsa0o.fsf@example.com>
MIME-Version 1.0
Content-Type text/plain; charset=utf-8
Content-Transfer-Encoding 8bit
Injection-Info dont-email.me; posting-host="ab975914da06ca00ebe394476dbacea4"; logging-data="14606"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+k4l6s4rc79CFS/seYC6y/A0Uh2kDm4X8="
Cancel-Lock sha1:R+2K/yVHFdWL+NeQQ6qmrwIVPHw= sha1:g8u4HyGk7VZhwOSQ927z3W/LJOc=
Xref csiph.com pt.comp.programacao:269

Show key headers only | View raw


Patricia Ferreira <pferreira@example.com> writes:

> Patricia Ferreira <pferreira@example.com> writes:
>
> [...]
>
>>> 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. :)
>
> Meu primeiro loop:
>
> (defun get-account (username)
>   (loop for u in *accounts*
>         do (when (eq username (account-username u))
>              (return u))))
>
> Acho que estou é gostando muito de /loop/.  Dificilmente vou usar toda
> essa expressividade, mas certamente vou usá-lo diariamente daqui pra
> frente.

Eis meu segundo.  Gere um nome (de arquivo) aleatório e tente usá-lo.
Se calhar de alguém já tê-lo escolhido, tente de novo (com outro nome).
Feito isso, retorne-nos esse nome sortudo e pra que a gente possa
renomeá-lo pro seu nome final---accounts.lisp.

(defun write-accounts ()
  (let ((name
          (loop 
            (let* ((tmp (random-string 10))
                   (name (format nil "~a.tmp" tmp)))
              (when 
                  (ignore-errors 
                   (with-open-file 
                       (s name
                          :direction :output
                          :if-exists :error
                          :if-does-not-exist :create)
                     (write *accounts* :stream s)))
                (return name))))))
    (rename-file name "accounts.lisp")
    *accounts*))

Tecnicamente temos um problema com esse procedimento.  Se o rename-file
não obtiver sucesso, nem vamos saber.

Back to pt.comp.programacao | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-02-27 21:48 -0300
  Re: sobre loops em common lisp Daniel Cerqueira <dan.list@lispclub.com> - 2024-02-28 18:25 +0000
    Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-02-28 21:49 -0300
      Re: sobre loops em common lisp Daniel Cerqueira <dan.list@lispclub.com> - 2024-02-29 10:15 +0000
        Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-03 22:49 -0300
          Re: sobre loops em common lisp Daniel Cerqueira <dan.list@lispclub.com> - 2024-03-04 07:55 +0000
            Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-04 14:37 -0300
              Re: sobre loops em common lisp Daniel Cerqueira <dan.list@lispclub.com> - 2024-03-04 19:49 +0000
                Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-04 21:46 -0300
                Re: sobre loops em common lisp Daniel Cerqueira <dan.list@lispclub.com> - 2024-03-05 09:03 +0000
                Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-05 17:21 -0300
                Re: sobre loops em common lisp Daniel Cerqueira <dan.list@lispclub.com> - 2024-03-06 08:56 +0000
                Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-08 17:16 -0300
                Re: sobre loops em common lisp Daniel Cerqueira <dan.list@lispclub.com> - 2024-03-08 21:11 +0000
                Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-08 18:38 -0300
      Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-05 17:23 -0300
        Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-05 19:50 -0300
          Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-05 20:05 -0300
            Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-05 20:07 -0300
              Re: sobre loops em common lisp Patricia Ferreira <pferreira@example.com> - 2024-03-08 17:12 -0300

csiph-web