package main

import "fmt"
import "time"
import "sort"

func main() {
    var events []time.Time
     // Functions can take types?
    events = make([]time.Time, 2)
    events[0], _ = time.Parse("15:04", "04:30")
    events[1], _ = time.Parse("15:04", "15:12")
    sort.Sort(TimeSlice(events))
    
    fmt.Println(events)
}
// WTF
type TimeSlice []time.Time

// Oh, the user does do it...
func (p TimeSlice) Len() int           { return len(p) }
func (p TimeSlice) Less(i, j int) bool { return p[i].Before(p[j]) }
func (p TimeSlice) Swap(i, j int)      { p[i], p[j] = p[j], p[i] }