// SortTags sorts tags in place. func SortTags(tags []language.Tag) { … } type sorter … func (s sorter) Len() int { … } func (s sorter) Swap(i, j int) { … } func (s sorter) Less(i, j int) bool { … } // UniqueTags sorts and filters duplicate tags in place and returns a slice with // only unique tags. func UniqueTags(tags []language.Tag) []language.Tag { … }