framework comparison