Эрланг стиль - случай против сопоставления с образцом функции
Я дошел до стадии, когда я сейчас написал довольно много кода Erlang, и я вижу, как какой-то стиль (плохой или хороший) вкрадывается в то, как я его пишу. Эта конкретная идиома, на которую я хотел бы получить некоторое мнение - лучше (более читабельно / быстрее / безотносительно) преобразовать операторы стиля кейса в сопоставление с шаблоном функции?
Например.
Сравнить (надуманный пример)
<code>case {Size > 100000, Type} of {true, ets } -> %% Do something to convert to dets something; {false, dets} -> %% do something to convert to ets somethingelse; _ -> ignoreit end; </code>
с
<code>... maybeChangeStorage(Size, Type) ... maybeChangeStorage(Size, ets) when Size > 10000 -> something; maybeChangeStorage(Size, dets) when Size < 10000 -> somethingelse; maybeChangeStorage(_,_) -> ignoreit. </code>
Я предпочитаю последнее в большинстве случаев, но меня заинтересует другое мнение.