so that - support decisionTree.jl on evaluation - enhance maintainability by reducing duplicated lines - improve performance to use named_dispatch instead of closure overhead in loops