ERB es bueno principalmente si tiene un diseñador web que trabajará en HTML simple y no conoce ni haml ni slim. De esta manera, puede escribir HTML y puede incrustar lógica ruby con las etiquetas adecuadas.
Si trabaja tanto en HTML como en Ruby Logic, o si su diseñador está listo para aprender algo nuevo (como HAML), optaría por HAML. Es mucho más compatible con ruby, reduce el recuento de caracteres en mucho y es mucho más legible que ERB.
Por ejemplo (tomado del sitio oficial de HAML ):
En ERB, su vista se verá así:
<div id="profile">
<div class="left column">
<div id="date"><%= print_date %></div>
<div id="address"><%= current_user.address %></div>
</div>
<div class="right column">
<div id="email"><%= current_user.email %></div>
<div id="bio"><%= current_user.bio %></div>
</div>
</div>
Mientras esté en HAML, se verá así:
#profile
.left.column
#date= print_date
#address= current_user.address
.right.column
#email= current_user.email
#bio= current_user.bio
¡Mucho más limpio!
En cuanto a la diferencia entre HAML y SLIM, nunca trabajé con SLIM, pero supongo que es una cuestión de gustos, eche un vistazo a ambas sintaxis y decida cuál se ve mejor en sus ojos. No creo que haya un ganador definitivo entre esos dos (HAML / SLIM).