Re: lintian: spelling
Hi,
On 21/10/16 12:56, Ben Finney wrote:
> Jakub Wilk <jwilk@debian.org> writes:
>
>> [Disclaimer: I'm not a native speaker of English.]
>
> (Credential: I am a native speaker of English.)
>
>>> :param int max_no_dec: number of rounds we allow to be stuck
>>
>> Lintian complains about "allow to" because "allow" requires an object,
>
> Yes, “allow” requires at least three referents: the party who grants
> allowance, the actions allowed, and the party to whom allowance is
> granted.
>
> Example:
>
> “Alice allows Bob to sit”.
>
> “Alice”, “to sit”, “Bob” are the three terms functionining in the
> grammar of the main verb “to allow”.
>
> As is usual with natural language, many usages leave implicit some of
> those terms.
>
> Example:
>
> “allowed to sit”
>
> is a phrase that leaves both parties out. It functions as:
>
> “<UNKNOWN_A> allowed <UNKNOWN_B> to sit”
>
>> and in most cases[*] this object goes between "allow" and "to". But
>> here, "number of rounds" is the object.
>
> That is incorrect; “number of rounds” is not a direct part of the
> grammar of “to allow”.
>
> Rather “number of rounds” is part of the grammar of the descriptor
> “stuck”; in this case, “stuck for ‘max_no_dec’ number of rounds”.
>
> Thus the verb phrase “stuck for ‘max_no_dec’ number of rounds” is
> distributed across the sentence. That is not bad, but it does make the
> grammar more difficult for non-Anglophones to parse.
>
>
> So a full explicit grammar of this statement would be:
>
> We allow <UNKNOWN> to be stuck for ‘max_no_dec’ rounds.
>
> Lintian is, correctly IMO, complaining because the statement leaves
> unknown the party to whom the action is allowed.
>
>> We allow $max_no_dec rounds to be stuck.
>
> That is not grammatical; it implies “rounds [to be stuck]” is the party
> to whom allowance is granted. That is not what this sentence means, so
> the phrasing should not imply that.
>
> I would suggest:
>
> :param int max_no_dec: number of rounds we allow [FIXME] to be stuck.
>
> where “[FIXME]” must be replaced with something explicit. Is it “the
> program”? “the network connection”? Some other party? It's not
> specified, and I think Lintian is correct to complain.
[FIXME] is certainly an obscure loop that is meant to stop any convergence that goes out of control.
I guess that we can over come it through a passive sentence:
:param int max_no_dec: number of rounds allowed to be stuck.
This change silences lintian.
Jerome
>
Reply to: