You're holding the head, because my-row-data is defined in the lexical or
dynamic scope of the function, and holds the head.

Try creating a function returning the seq that is currently stored in
my-row-data and call it instead : (my-row-data)

-- 
Laurent

2009/4/2 fitzpatrick...@googlemail.com <fitzpatrick...@googlemail.com>

>
> Hi,
> Thanks for the replies.
>
> I have adapted the code above with my example. I still get the heap
> error!
> my-row-data is the lazy sequence. each element in the seq is a 2
> element vector of Java String[]
> output-array is just a printing function for the String[]. For
> convenience i place a @ between the two outputs.
>
> (defn t [file-name]
>    (with-open [w (java.io.FileWriter. (java.io.File. file-name))]
>        (doseq [l my-row-data]
>          (.write w (str (output-array (first l) ",")
>                                                                        "@"
>
>    (output-array (second l) ",")
>
>  "\n")
>
>                                        )
>                                )
>                )
> )
>
> tks,
> PJ
>
>
> On Apr 2, 12:15 pm, Christian Vest Hansen <karmazi...@gmail.com>
> wrote:
> > On Thu, Apr 2, 2009 at 11:58 AM, fitzpatrick...@googlemail.com
> >
> > <fitzpatrick...@googlemail.com> wrote:
> >
> > > Hi,
> > > I am attempting to print a large lazy seq to file. I have attempted
> > > various approaches and obviously am missing something obvious.
> > > I have attempted do use do-seq and also iterated manually through the
> > > sequence but i always come up with the heap error.
> > > Has anyone got any suggestions?
> >
> > Don't hold on to the head of the seq.
> >
> > It may not be obvious where, but you are most likely holding on the
> > the head of the seq, which prevents the elements from being GC'd as
> > you iterate them.
> >
> > > tks,
> > > PJ
> >
> > --
> > Venlig hilsen / Kind regards,
> > Christian Vest Hansen.
> >
>

--~--~---------~--~----~------------~-------~--~----~
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 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to