有没有办法让Elixir中的列表理解变得懒惰?如果没有,有没有办法将其转换为const
?
Stream
此代码段通过占用太多内存来破坏我的程序。
我想在my_list上应用过滤器,map和reduce。
答案 0 :(得分:25)
理解是平面地图。所以你的代码相当于:
Stream.flat_map 1..1000000, fn i ->
Stream.flat_map 1..1000000, fn j ->
[{i, j}]
end
end
我已经为"提出了一个"流"并行"对于未来的Elixir版本,但它正在等待该语言的其他一些改进。