This latest question involves ELO, which is used to rate chess players (and other sports).
The difference between the previous (win-loss) system and ELO is the allowance for a third option, a draw. Carl coded the previous rating system, and I have tried to alter it.
See code for ELO procedure.
Adding a D to the third field, gets the result I want.
ELO(Record(rating= 2400),Record(rating= 2000),D)
Adding anything other than D to the third field means the first player defeats the second.
My preference would be to leave nothing in this third field to signify this (but I don't know if this is possible).
The main problem is getting the bulk processing to work (for a series of matches...)
See Update procedure.
I have this flawed notation:
Games:= [[Tom_C, David_J, D],[David_J, Tom_C]]: #Tom_C drew David_J then David_J defeats Tom_C.
Hope someone can help.