Yep, that's just a typo in the email.  Something was wrong with my browser
and I
couldn't just paste the code in :(

On Mon, Nov 24, 2008 at 3:33 PM, Shawn Hoover <[EMAIL PROTECTED]>wrote:

> On Mon, Nov 24, 2008 at 5:17 PM, Brian Doyle <[EMAIL PROTECTED]>wrote:
>
>> 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
>>
>>
> Your let binds prev-line, while the code inside uses pre-line. Is that just
> a typo in your email, or is that the code you're running, too?
>
> Shawn
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to