Is the use of "who" correct in this sentence?

"The Turk is chess engine who can interact with user interfaces which support Winboard protocol at the moment"

I feel that which can be used instead of who but I'm not sure. If that's not correct what should I use instead of who?


Solution 1:

This is a very unclear sentence, for many reasons, one of which is the use of who.

First, the noun phrase chess engine, as a count predicate noun, needs an indefinite article:

The Turk is a chess engine

and the noun phrase Winboard protocol needs a definite article:

supports the Winboard protocol.

Second, you use a stacked relative clause construction with two Wh- words, which is bad style -- repeating a grammatical word should carry extra information, or there's no point to it and it just makes work for everybody. It would be much better to omit one of the Wh- words (this won't work here because both are subjects and only non-subject relative pronouns can be deleted), or to substitute that for one of them,

a chess engine that can interact with user interfaces which support the Winboard protocol

a chess engine which can interact with user interfaces that support the Winboard protocol

or to reduce one or both of the relatives to a participle:

a chess engine that can interact with user interfaces supporting the Winboard protocol

a chess engine interacting with user interfaces that support the Winboard protocol

a chess engine interacting with user interfaces supporting the Winboard protocol

Finally, the temporal phrase at the moment is sitting at the very end of the sentence, after both relative clauses, and it's not clear what clause it refers to. Does it mean

  • it interacts only with interfaces that currently support Winboard (but not others)
  • it interacts with the current interfaces that support Winboard (but not the old ones)
  • it currently interacts with interfaces that support Winboard (but changes are planned)
  • ... etc?

So, put at the moment close to what it modifies.

Oh, and don't use who. Who is for people, not programs, no matter how good they are.

Solution 2:

I find the sentence difficult to understand, perhaps because I am not familiar with the subject. If Turk is simply the name of the chess engine, then the relative pronoun has to be which, not who, but you could also introduce the clause with that. In any case, I think you need the indefinite article, a, before chess engine.