I don't see any documentation on the possibility of overriding operators and yet there have been no questions about it seems over all of the entirety of the forums.
Is it possible to do any form of overriding operators in Byond, specifically that of comparison operators (as that's where it'd make the most sense)? The application is in object-oriented programming where a proc may not exactly know the proc that is used for a specific comparison, such as would be most useful in a Sort proc that could be shared over several different types of objects, especially considering the possible of lists with multiple types of objects.
Example:
//-------------------------------------------------------------
Person
var
name
age
New()
src.name = ""
src.age = 0
// Lacking /proc as per overriding in DM.
// Comparison operator procs
isEqualTo(var/Person/person)
var/isEqual = 0
if(src.name == person.name)
isEqual = 1
return isEqual
isGreaterThan(var/Person/person)
var/isGreater = 0
if(src.name > person.name)
isEqual = 1
return isEqual
isGreaterOrEqualThan(var/Person/person)
var/isGreaterOrEqual = 0
if(src.name >= person.name)
isGreaterOrEqual = 1
return isEqual
// ...
//-------------------------------------------------------------
proc
Sort(var/Person/firstPerson, var/Person/secondPerson)
if(firstPerson > secondPerson)
// ...
return
//-------------------------------------------------------------