Let's say we're trying to identify a word or a phrase and on the surface it seems a bit strange and to not fit into an easily identified category/part of speech (POS).

Is it valid to say "If it walks like a duck and quacks like a duck then it is a duck", for the purpose of identifying its category?

E.g. "Phrase X" can go anywhere that a POS "Y" can go, therefore "phrase X" is a POS "Y". "Phrase X" walks like a duck and quacks like a duck (the duck being a POS "Y") so it is a duck.

  • Isn't that circular reasoning? If you already know that it "can go anywhere that a POS "Y" can go" then X is, has, becomes (depending on your framework) a Y. The problem is: "can go" is not defined; It's the question you are trying to answer.
    – vectory
    Jan 31, 2020 at 8:33
  • 2
    Yes, it's valid. That is exactly how linguists identify the POS of a word. Does the word occur in just those positions where words you know to be nouns (e.g.) occur? If so, it must be a noun.
    – Greg Lee
    Jan 31, 2020 at 16:11
  • @GregLee That should be posted as an answer.
    – CJ Dennis
    Feb 1, 2020 at 2:53
  • I disagree. In, for example, "Over a year was spent on the project", the subject "over a year" is in the position where a noun would typically occur, but "over a year" is a PP not an NP.
    – BillJ
    Feb 2, 2020 at 12:42
  • @BillJ That's the reverse of what I'm asking. Does "over a year" fit where other PPs fit? If yes, it is also a PP. It doesn't matter if NPs can sometimes fit as well if there are cases where they don't fit.
    – CJ Dennis
    Feb 2, 2020 at 14:43

1 Answer 1


In the dynamicly typed programming languages I know, duck typing means you have an object with a well defined interface, properties with certain names, that are passed along with the object into other functions, which barf when trying to call back a property that's not there. So every object that supplies a method toInteger(X) can be treated like an integer, so e.g. 1+'a' == 50 in most codes, but they disagree on how to form "a1" from 'a' and 1; some allow 'a'+1, some don't, which depends on how the operator is defined, which isn't always implemented as property, but as built-in function.

Equivalently, people frequently barf upon interpreting "Alice, Bob and me". Some employ type coercion, applying toSubject on the fly, others say that's inefficient, who prefer to be strict and test isSubject

Similarly, even native speakers quarrel about the number inflection for to be after conjunctions of various number (a paper and three publications [is/are]) because they are not sure what the highly polysemous and does.

So, no, from a descriptive stand point you cannot decide simply from observation when you observe contradictory situations.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.