# Idiomatic way to write element-wise combination of array of arrays?

**URL:** <https://discourse.julialang.org/t/idiomatic-way-to-write-element-wise-combination-of-array-of-arrays/18467>\
**Category:** New to Julia\
**Tags:** question\
**Created:** [December 8, 2018, 6:42pm UTC](https://discourse.julialang.org/t/idiomatic-way-to-write-element-wise-combination-of-array-of-arrays/18467 "2018-12-08T18:42:01Z")\
**Posts on this page:** 1\
**Showing post:** 10

<div class="post-metadata">

**Author:** ![chakravala](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chakravala/32/6832_2.png) [@chakravala](https://discourse.julialang.org/u/chakravala)\
**Post date:** [December 8, 2018, 11:23pm UTC](https://discourse.julialang.org/t/idiomatic-way-to-write-element-wise-combination-of-array-of-arrays/18467/10 "2018-12-08T23:23:03Z")

</div>

More generally, you can recursively define this broadcast up to any depth n like this

```nohighlight
julia> function rebroadcast(f,n,args...)
           n>1 ? rebroadcast(broadcast,n-1,(f,args...)) : broadcast(f, args...)
       end
rebroadcast (generic function with 1 method)

julia> rebroadcast(div,1,[1],[2])
1-element Array{Int64,1}:
 0

julia> rebroadcast(div,2,b,a)
2-element Array{Array{Int64,1},1}:
 [1, 0, 0]
 [0, 0, 0]

julia> rebroadcast(div,3,ab,aa)
2-element Array{Array{Array{Int64,1},1},1}:
 [[1, 1, 1], [1, 1, 1]]
 [[1, 0, 0], [0, 0, 0]]

```

---

_[View the full topic](https://discourse.julialang.org/t/idiomatic-way-to-write-element-wise-combination-of-array-of-arrays/18467)._
