Add right_associative parameter, change parameter order a bit