This is another project where we reinvent the wheel. Everyone knows what a simple calculator looks like, or do they. Spot the calculator.
The problem with this project is that it has been done many times already and there are a number of working calculator tclets readily available to download. For this reason it can hardly be recommended to be written from scratch, but different forms of calculator are going to be used later on. So the motive behind this exercise is to provide students with a framework which they understand and can then build on.
One interesting exercise is to provide the code for a simple calculator and ask the students to turn it into a calculator suitable for playing Broken Calculator. This will engage the students in the key aspects of this exercise, widgets and bindings, with a minimum amount of slog.
A later project in the intermediate section is the integer project, which does arithmetic on extremely large integers. This calculator is then altered so it works with the new integer functions. There is also a project for arithmetic on fractions which itself depends on the integer project.
Two projects could be combined into one as the obvious application of these number systems is in a calcultor.
Consider which of the examples above is most amenable to changes required to play Broken Calculator or other maths games.
Later on there is also the Chu Calculator, not simple at all.