Why is groovy so diff