7.3 Update: Completion improvement
by Manu (modified: 2013 Mar 01)
In 7.3 we are introducing an improved completion in the EiffelStudio editor. In addition to being able to see the feature name, feature signature, you will now be able to see the contracts of the routine as you can see in the screenshot below.
If you have any other suggestions we could do to improve the completion, let us know!
Why would a client want to edit the supplier's contracts?
This will be a great improvement, Manu.
I'm wondering, however, why the screen shot shows that you can edit the contracts? It seems inappropriate to be offering this capability from within the calling routine, but maybe you are planning some work flow that I'm not seeing yet. If there's not a good justification for it, then I think this option should go because it looks like clutter to me.
The single best improvement that could happen to the completion, in my opinion, would be to make it more reliable. It is much better these days than it used to be, but sometimes it still isn't available when I want it.
Another thing I've long wished for is a single shortcut for class completion and feature completion. I often hit the wrong keyboard shortcut, so I get a list of classes when I need a list of features. Given Eiffel's syntax, I don't think that there are any places in the source code where you could legally use either a class or a feature. For example, in the screen shot above it has to be a feature. Surely, if there was a single shortcut for both types of completion, the completion mechanism could reliably decide correctly whether to present a list of features or a list of classes.
Thanks for the feedback. The `edit contracts' facility is a left over for reusing the feature tooltip currently present in EiffelStudio when you are over the name of a feature declaration. We will be removing it shortly.
We will keep in mind your other requests.
Contract editing seems an "it depends" answer ...
If we are referring to our own code, it could be we might see the contract and determine it is too loose, restrictive or simply wrong. Having the capacity to spot contacts and potentially open and edit them by way of the auto-complete seems reasonable. That said, there are other, better and more established means of discovering and editing contracts for the purpose of ensuring they are correct, so our team will not miss the "Edit contract" piece at all.
Clutter versus minor convenience
Yes, I can see the usefulness of the "Edit contract" link for editing contracts in our own code, but the convenience would be minor as you say. I think the clutter would be worse than any extra convenience from it.