Bot Racer – Game in Eiffel
Learn Eiffel and implement a further game in Eiffel. The gameshall resemble that of the second assignment, this is, the game need not be network-based, and several players shall be able to play on the same computer using the same keyboard simultaneously. It is recommended to use EiffelStudio, an IDE based on Eiffel. Be careful to download the open-source version, not the commercial one. Each team member shall work on this assignment to get his/her own Eiffel experience. There is support for windows with graphical content, but it maybe difficult to find appropriate libraries and documentation. As an alternative you can write the game such that it is based only on text output.
Please try out the specific features of Eiffel to answer the following questions:
How much work is it to specify useful assertions in Eiffel?
How important is the run-time penalty of assertion checking? How is it possible to specify in a subtype preconditions thatare (in some sense) stronger than in the supertype?
How isit possible to specify in a subtype postconditions that are (insome sense) weaker than in the supertype? (Yes, it is possible,although not obvious.)
Eiffel supports covariant input parameters. What are the advantages and disadvantages of this feature in practical programming?
Which features of Eiffel would you like to see also in your favorite programming language? Which features of Eiffel wouldyou rather avoid to use?