shuffle sml language definition a bit for readability