I am parsing a file and to compare the current line with the previous line of the file. I am using line-seq to go thru the file and I thought I would create a ref to store the previous line. When I want to update the previous line value I can't seem to do it. I've never used refs before so I'm sure I'm doing something very stupid.
(defstruct line :lat :lon :name) (defn convert [file] (let [prev-line (ref (struct line))] (with-open [r (reader file)] (doseq [l (line-seq r)] (let [ps (split #"," l) c-line (struct line (ps 0) (ps 1) (ps 2))] (if (not= c-line @pre-line) (do ; do stuff here then update pre-line (dosync ref-set pre-line (apply struct line (vals c-line))) (println @pre-line)))))))) ; this prints out all nils doesn't seem to work Sorry if this email is not formatted correctly. Something is wrong with my browser currently typing in a textarea. Thanks. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---