Constrained genericity: Difference between revisions

Add Nimrod
(added swift)
(Add Nimrod)
Line 539:
nom..nom..nom
nom..nom..nom</pre>
 
=={{header|Nimrod}}==
<lang nimrod>type
Eatable = generic e
eat(e)
 
FoodBox[e: Eatable] = seq[e]
 
Food = object
name: string
count: int
 
proc eat(x: int) = echo "Eating the int: ", x
proc eat(x: Food) = echo "Eating ", x.count, " ", x.name, "s"
 
var ints = FoodBox[int](@[1,2,3,4,5])
var fs = FoodBox[Food](@[])
 
fs.add Food(name: "Hamburger", count: 3)
fs.add Food(name: "Cheeseburger", count: 5)
 
for f in fs:
eat(f)</lang>
 
=={{header|OCaml}}==
Anonymous user