Paddle
During my first summer internship working for RUAG Space, I wrote a program called Paddle in the language TCL. It allows the user to generate hardware specifications. The user can tell the program what a hardware board consists of, and in what ways components and interfaces should be connected. The user input is short and concise, and it is being fed into the TCL parser using a neat technique.
As should always be the case when it comes to user input, much emphasis has been placed on automatically checking if the given data is safe, sound and without conflicts. The program can generate specifications in a number of different formats, and completely new ones have been created during the process.
I spent six weeks at RUAG Space developing the program, and in this time I also had to learn the language TCL from scratch, since it was unfamiliar for me. The program was very successful, and saved great amounts of time and work for the engineers using it.
Screenshot of the program: