| ENTIRE means the whole system. This would include the LaTeX stuff. Think of 2.5 as the OOA and OOD of the entire known system, and P3 as the implementation (and of course any changes in the OOA and OOD) of the entire known system. Eric Anderson |
| Yea, that includes the CRC and UML for all the stuff. If they are completly seperate then you can have seperate diagrams (athough I don't see how math objects can be created out of LaTeX strings if the math objects know nothing at all about the LaTeX stuff or some interface that the LaTeX stuff is following. Make sure that your diagrams show all important relationships between the classes.) Eric Anderson |
| The milestone description says P2.5 is a design for the 'ENTIRE' system, which seems to refer primarily to P3, but includes any classes from P2 you retain for use in P3 or future milestones. If you revise classes you had in P2, include CRC/UML for the redsigned classes. Ashley Taylor, TA |
| This would be a discription of what tasks you assign the individuals in your group and by what time you need them done. The external timeline is the Milestones we gave you, but I would guess that internaly yall have set goals for who does what and when does it need to be done by. Show these timelines Eric Anderson |
| LaTeX is a text processing language commonly used in CS. There are tons of resources on the web for information. Here is the dmoz directory on it: http://www.dmoz.org/Computers/Software/Typesetting/TeX/LaTeX/, but feel free to use any resources you can find. Type LaTeX into just about any search engine and information should come back about it. Eric Anderson |
| Check out the explore method in Squeak. On an instance of an object that you create do 'myObject explore' and see what you get. Now getting a picture of what we want? Eric Anderson |
| Two single quotes in a string makes renders as a single quote. Try doing this in the workspace: 'don''t' inspect. You will see that it is 5 characters with the 4th one being 39 (the ASCII value for '). Eric Anderson |
| This is one project, therefore you should still have the stuff from the previous milestones (with the exception of possible changes in API from Milestone 1). Therefore on P3 I should be able to type MathEquationUI start, and have an interface that meets the requirements of milestone 2 show up. The assignment does not say that you have to include the LaTeX support in the UI for P2.5/P3, but feel free to if you want. If you already have the support built in for the classes it should be a simple matter of having a FillInTheBlank object pop up, get the string and pass it to the MathEquationLaTeX object (or any other way you want to get the information from the user). Eric Anderson |
| P3 says you just need to implement a from: method which takes a LaTeX string. So I don't see where you are required to have a UI for LaTeX in P3, though you can implement one if you want. However, You do need to implement explore:. I also agree that the P2 stuff should be included, and should still work (though not necessarily for LaTeX). Ashley Taylor,TA |
| I think you should handle nested fractions, but I would not make my project late trying to handle them, because they were not explicitly required. Get a good clean design that can be extended to handle them, if you can't implement them now, and note any limitations of your design/system. Ashley Taylor,TA |
| Error handling is not specified in the milestone description, but if you are implementing a parser, it should reject erroneous input, and it would be appropriate to give some sort of informative error message. However, I would not suggest spending so much time on error handling that your project is late. It would be better to include as much error handling as time permits, and document what types of errors your system can or cannot handle. Ashley Taylor, TA |
| You should be parsing MathOperations from the LaTeX input string, at least for explore: to work. It's not stated what operators are required, but the the pdf project description mentions 'standard operators', so it would be a good idea to handle these for the purpose of creating MathObjects, even though they are not part of the LaTeX syntax. You should create MathObjects from the LaTeX string for things stated in the P3 milestone description - greek symbols, fractions, and sub/supercripts. This is not necessarily to format the ourput, but to be able to explore: the MathObjects you create. Ashley Taylor, TA |
| It is up to you to decide how you want to design it. The only requirement in this regard is that it has to be 100% Squeak code. Eric Anderson |
| It is just an equation editor. You just need to be able to create the equations. Eric Anderson |
| The milestone description says P2.5 is a design for the 'ENTIRE' system, which seems to refer primarily to P3, but includes any portions of P2 you retain for use in P3 or future milestones. We don't know what P4 is yet, so you can't design explicitly for that, although a good design should be readily extensible to take care of it. P2.5 should contain CRC/UML for parts of P2 which you are going to keep. If you are revising classes you used in P2, include the redesigned classes. If someone donated classes or input on class design from P1, I think you should note that in P2.5 Ashley Taylor, TA |
| I would mainly focus on from this point on. If you want you can include timeline info from P2 (P1 is not really needed since you did that individually), but what we are really looking for is from P2.5 onward. Eric Anderson |
| tgen.zip |
| I'll get to it...Sigh... Mark Guzdial |