package main

import "fmt"

// Number adalah constraint: hanya int, float64, dan tipe turunannya.
type Number interface {
	~int | ~float64
}

// Max adalah fungsi generik dengan type parameter T.
func Max[T Number](a, b T) T {
	if a > b {
		return a
	}
	return b
}

func main() {
	// String bukan anggota himpunan Number.
	fmt.Println(Max("apel", "bola"))
}
