There are a number of improvements that should be made to the program this file just puts down some of my thoughts. I might try to do some of these, if I have the time, if anyone else makes improvements to the program please send them to me, I will ensure that they get passed on. 1. Graphics I have tried to make the graphical output as transportable as possible, you should be able to see the basics of any pattern on any computer which has a 'C' compiler. However the program would be improved by making use of graphics facilities on machines, I have tried to keep the display portion seperate from the rest of the code, so anyone with knowledge of a specific machine can replace "ascii.c" with a set of routines to display graphics on thier own systems. Look at "x11.c" and "amiga.c" for an idea of what needs to be done. If you want a challenge how about creating a 3D rendering output, adding two more hands and specifying an six ball passing pattern between two people :-) 2. Hand movement As the program currently stands you must specify each movement that a hand makes, a better option would be to specify just the key points and have the program create the movement commands to ensure a better transition. 3. Hand orientation There should be a way to specify what the hand is doing, for example adding clawing, holding the hand upside down, claping and so on. 4. Extra commands With the current output there is no point in including fancy commands, such as claw A catch with hand palm down toss Throw club with spin spin Specify how fast to spin the club clap Sound effects :-) however these might be worth doing if there are some graphics that allow you to see such things. 5. Subroutines It might be a good idea to have "subroutines", this would allow you to say things like, "throw four cascades then three reverse cascades", or "do overthrow when user presses button" 6. Graphical input It would be nice to be able to "teach" the program how to juggle using graphical input. For example have the program play a bit of a juggle then select throws and hand movements by manipulation of the images of the balls and hands. 7. Different objects Objects should have a "type" for example "ball", "club", "scarf", "cat" and so on. These could modify both the appearence of the object and its behaviour, so scarfs could suffer from less gravity, cats could twist in mid air without being spun, and so on. > 8. Site Swaps > > Since all site swaps can be simulated by this program it would > be a good idea to write a program that took site swaps and > created a ".jug" file. The J2 package from Jack Boyce now does this!! 9. Bouncing It should be possible to add some bounce juggles, this would need to specify the position of the floor and some idea how bouncy the ball is.