【发布时间】:2011-08-07 20:43:48
【问题描述】:
我正在制作自己的小函数库,并尝试遵循 Phobos 的命名约定,但我真的很困惑。我怎么知道东西适合放在哪里?
示例:
如果Phobos中有foldRight之类的功能(基本上是reduce在相反方向),我会在哪个模块中找到它?
我能想到几个:
-
std.algorithm: 因为它是在表达一种算法 -
std.array: 因为我很可能会在数组上使用它 -
std.container:因为它用在容器上,而不是单个对象上 -
std.functional:因为它主要用在函数式编程中 -
std.range:因为它也在范围内运行
但我不知道哪一个是一个不错的选择——我可以为其中至少 3 个提供令人信服的论据。
约定是什么?
【问题讨论】: