0
respostas

Sugestão sobre a aula 4

Fiquei "incomodado" com a mudança de padrão que estávamos usando no curso. As pessoas incluídas na espera tinham o formato "111" e quando passamos a utilizar o doseq ou dotimes o padrão passou a ser um inteiro. Fiz o código abaixo somente para manter um padrão anterior e também para explorar um pouco mais o clojure, fica de sugestão para quem tiver curiosidade =)

(defn simula-um-dia-em-paralelo-dotimes []
  (let [hospital (atom (h.model/novo-hospital))]
    (dotimes [pessoa 6]
      ; Shadowing symbol "pessoa"
      (let [pessoa (inc pessoa)
            ; padding left with zeros and replaces zeros by number
            pessoa (clojure.string/replace (format "%03d" pessoa) #"0" {"0" (str pessoa)})]
        (starta-thread-de-chegada hospital pessoa)))
    (.start (Thread. (fn [] (Thread/sleep 500)
                       (pprint hospital))))))
(simula-um-dia-em-paralelo-dotimes)