This week's book giveaway is in the Performance forum.
We're giving away four copies of The Java Performance Companion and have Charlie Hunt, Monica Beckwith, Poonam Parhar, & Bengt Rutisson on-line!
See this thread for details.
Win a copy of The Java Performance Companion this week in the Performance forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Recursive Grouping

 
Ari King
Greenhorn
Posts: 20
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The code below is supposed to group and nest values as key value pairs, while it does that it also encapsulates the pairs in lists; does anyone know why? See below for code and example (notice the embolden parentheses):

({"a" ({"dan" [["a" 2011 "dan"] ["a" 2010 "dan"]]})} {"b" ({"jon" [["b" 2011 "jon"]]})})

 
Ari King
Greenhorn
Posts: 20
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ari King wrote:The code below is supposed to group and nest values as key value pairs, while it does that it also encapsulates the pairs in lists; does anyone know why? See below for code and example (notice the embolden parentheses):

({"a" ({"dan" [["a" 2011 "dan"] ["a" 2010 "dan"]]})} {"b" ({"jon" [["b" 2011 "jon"]]})})


I figured it out, I had to add "into {} ...". From what I understand, I had to do this because "for" returns a lazy sequence hence the parentheses; thus I need to transform the sequence into a map.

 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic