9

Possible Duplicate:
Marking plural of code words

In the language that I'm currently working in one of the keywords is try. I'm writing an error message:

No implementation for global level try statements.

It's too long in my source and so I would very much like to reduce it to

No implementation for global level try's.

Anybody using my code should understand it very easily as my code is entirely about dynamically determining what exception handling is in place and the try keyword is one of the cornerstones of exception handling in the given language.

  1. Could we pretend for the duration that I'm not being overly picky?
  2. Is this pluralization correct or at least acceptable? Both "tries" and "trys" look very wrong to me.
  3. Are there general rules pertaining to pluralizing keywords and other identifiers from programming languages. A quick google search and more extensive search of this site didn't quite do it. I did find this question. The selected answer assumes the presence of markup (not available in my case) and the other answer sidesteps the issue by avoiding pluralizing the words in question. Are there any new insights to be had?

An answer to (3) would answer (2) of course and so I would be happy with just that. If it's not available though, I would appeciate input on (2).

11
  • 1
    Whatever else, but the apostrophe is just horribly wrong there. It’s neither a possessive nor an omission. But see also (Wikipedia) Apostrophe: use in forming certain plurals. Commented Dec 2, 2010 at 12:07
  • Speaking to it from a programming perspective, what on earth is "too long" about a simple 50-character sentence? The original is straightforward and understandable to your target audience; why do you need to shorten it further?
    – Hellion
    Commented Dec 2, 2010 at 15:44
  • Is "no implementation for..." a technical term? Because on the face of it, I'd write something like Global-level 'try' is not implemented.
    – Marthaª
    Commented Dec 2, 2010 at 17:10
  • @Colin Fine - That question certainly does a fine job of answering my question for being a duplicate. As I pointed out - it doesn't. Commented Dec 2, 2010 at 18:39
  • 1
    @aaron: (re Jon’s suggestion) that’s in fact how I would handle it. Commented Dec 2, 2010 at 19:39

4 Answers 4

7
  1. You're not.

  2. If you're consistent about how you do it, it doesn't really matter how you do it. I would go for trys or "try"s, though, because

  3. You should never inflect a keyword (tries), just like you shouldn't capitalise it at the start of a sentence ("Try is for exceptions"), especially in the most common case that the language is case-sensitive; keywords are taken painfully literally by a compiler, so literature must reproduce them with painstaking exactness.

As VonC states, it's probably best to just re-word, though as the convention with functions is to append parentheses (foo()), you might try appending braces if your language is block-delimited:

No implementation for global-level try{}s.
4
  • In this case, it's Python. try:s? Doesn't quite do it. At least I have some interesting code to write while I'm wringing my hands over it. Commented Dec 2, 2010 at 7:56
  • It looks like the "try"s have the day. Commented Dec 2, 2010 at 19:43
  • 1
    I'll just add one more suggestion that instead of pluralizing it, perhaps you could singularize it: No implementation for a global-level try.
    – Hellion
    Commented Dec 2, 2010 at 23:37
  • @Hellion: That's what everyone's referring to when they say "re-wording".
    – Jon Purdy
    Commented Dec 3, 2010 at 5:25
7

I would rather leave any language keyword alone (as in "non pluralized"), and convey the pluralization otherwise, like:

No implementation for all global level "try".

or

No implementation for any global level "try".

1
  • Good stopgap solution, but doesn't work in the general sense. There will be a need to pluralize keywords eventually.
    – Pacerier
    Commented Jul 6, 2014 at 4:54
5

I believe the difficulty you're having is because although we use English words as the basis for programming languages, once they are used as such they are no longer English Words, but are tokens, identifiers or otherwise non-English symbols.

This being the case, the rules of English usage can no longer be applied as if this was still a "word" used as the part of speech your "ear for English" would expect. Enclosing the item in quotes, as suggested by VonC highlights the fact that the item in question has evolved into a non-English object.

2
  • good explanation. +1
    – VonC
    Commented Dec 2, 2010 at 16:10
  • 1
    Or, as Yoda would say..."There is no 'Try' "....
    – user597
    Commented Dec 6, 2010 at 16:40
3

There is in fact a very long-standing pluralisation rule that apostrophes can be used to pluralise words that are used as themselves, rather than in terms of what they signify. For example, "No if's and but's". ("Do's and don'ts" complicates it by avoiding a double apostrophe in the second case, though that's also sometimes found).

It's a rule that some style-guides recommend against, particularly if style (italics for words used as here, a monospace font for computer keywords) already does the job of making the word stand apart from the pluralising s, but it certainly is valid.

Your "try's" would be analogous.

I would though, personally prefer the likes of "trys", where font-change is used. The cases where apostrophes are used in plurals are less and less common, and the use of a different font to highlight when a computer context is intended will make other passages clearer too.

Not the answer you're looking for? Browse other questions tagged .