>
> Is there any way to make it lazy to avoid the dreaded outOfMemoryError ? 
> Or is it already lazy and I'm not seeing it / working with it properly?
>

It's already lazy. If you are experiencing an outOfMemoryError, make sure 
you're not holding on to the head of the list.

line-seq, partition-by, filter, and map all return lazy sequences.

-Walter

On Friday, June 22, 2012 6:33:58 PM UTC-4, Joseph Guhlin wrote:
>
> Awesome, thank you so much.
>
> Is there any way to make it lazy to avoid the dreaded outOfMemoryError ? 
> Or is it already lazy and I'm not seeing it / working with it properly?
>
> Best,
> --Joseph
>
> On Friday, June 22, 2012 7:30:28 AM UTC-5, Walter Tetzner wrote:
>>
>>
>>
>> On Friday, June 22, 2012 8:28:02 AM UTC-4, Walter Tetzner wrote:
>>>
>>>
>>> (defn read-records
>>>   "Read the data from the given reader as a list of strings, where
>>> each string is made up of multiple lines, separated by // on it's own
>>> line."
>>>   [reader]
>>>   (->> (line-seq reader)
>>>        (partition-by #{["//"]})
>>>        (filter (comp not #{["//"]}))
>>>        (map (partial apply str))))
>>>
>>  
>> Actually, you want the new lines:
>>
>> (defn read-records
>>   "Read the data from the given reader as a list of strings, where
>> each string is made up of multiple lines, separated by // on it's own
>> line."
>>   [reader]
>>   (->> (line-seq reader)
>>        (partition-by #{["//"]})
>>        (filter (comp not #{["//"]}))
>>        (map (partial clojure.string/join "\n"))))
>>
>>

-- 
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
Note that posts from new members are moderated - please be patient with your 
first post.
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