score:2

Accepted answer

how close is this?

val c : list[list[string]] = list(list("a", "c"), list("b"))
c.map(x => x.mkstring("[", ", ", "]")).mkstring

// string = [a, c][b]

score:0

you can define a function s that makes a string ["a","b"] from a list list("a","b").

val c : list[list[string]] = list(list("a", "c"), list("b"))                            
def s[t](list:list[t]) = list.mkstring("[",", ","]")
println(s(c map s))     // [["a", "c"], "b"]

or a more generic option:

val d = list(list("a", list("c"), list.empty[string]), list("b"))
def t[t](list: list[t]): string = list.map {
  case a: list[_] => t(a)
  case a          => a
} mkstring("[", ", ", "]")

println(t(d))           // [[a, [c], []], [b]]

Related Query

More Query from same tag