Take the 2-minute tour ×
English Language & Usage Stack Exchange is a question and answer site for linguists, etymologists, and serious English language enthusiasts. It's 100% free, no registration required.

Which of the following sentences is grammatically correct?

Had this been a solution that can be provided in Java 5 and above, the overloaded replace(charSequence, charSequence) may be used.

Have this been a solution that can be provided in Java 5 and above, the overloaded replace(charSequence, charSequence) may be used.

share|improve this question
2  
They both look off to me... the first one mixes past (had this been) with present (can be provided) tense. The second one starts with "Have this been" which is wrong but I'm not 100% sure what you mean so I'm not sure how to correct it. –  FrustratedWithFormsDesigner Aug 10 '11 at 16:16
add comment

1 Answer

up vote 6 down vote accepted

The meaning is ambiguous, but here is one possibility:

Had this been a solution that could be provided in Java 5 and above, the overloaded "replace(charSequence, charSequence)" could have been used.

The tenses are inconsistent in the first example, and "Have this been..." in the second example is not normally used.

share|improve this answer
    
The whole sentence is stilted, and there's no doubt that may be needs to be changed to could have been or something similar. But although it improves the overall phrasing (from a pretty low base, admittedly) I don't think it's actually necessary to change solution that can be to solution that could be. In fact I suspect that doing so may introduce an ambiguity. Does Java5 in fact support the solution? At least with "can" we're led to assume it does, but with "could" the opposite seems at least possible. –  FumbleFingers Aug 10 '11 at 17:14
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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