Currently, NetLogo automatically determines the agent type needed for a procedure. There are cases where we want agents of different types to have procedures of the same name but different behavior. For example, in Wolf Sheep Simple 5, we have this code:
to go
; other code irrelevant for this discussion
ask turtles [
; other code
eat
]
; other code
tick
end
to eat
ifelse breed = sheep
[eat-grass]
[eat-sheep]
end
It would be nice to be able to optionally do something like:
to sheep:eat
eat-grass
end
to wolves:eat
eat-sheep
end
Being able to (optionally) specify the types of procedures like this could make code easier to understand in many cases, could sometimes make code more concise, and may allow for performance optimizations.