Using a model railroad to teach digital process control
SIGCSE '88 Proceedings of the nineteenth SIGCSE technical symposium on Computer science education
A laboratory for teaching the development of real-time software systems
SIGCSE '91 Proceedings of the twenty-second SIGCSE technical symposium on Computer science education
Communications of the ACM
Real-Time Systems and Programming Languages: ADA 95, Real-Time Java, and Real-Time POSIX
Real-Time Systems and Programming Languages: ADA 95, Real-Time Java, and Real-Time POSIX
Raising motivation in real-time laboratories: the soccer scenario
Proceedings of the 35th SIGCSE technical symposium on Computer science education
We've been working on the railroad: a laboratory for real-time embedded systems
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Ada for the control of degradation of service
ACM SIGAda Ada Letters
The rise, fall and persistence of Ada
Proceedings of the ACM SIGAda annual international conference on SIGAda
Teaching ‘concepts of programming languages' with ada
Ada-Europe'12 Proceedings of the 17th Ada-Europe international conference on Reliable Software Technologies
Hi-index | 0.00 |
How do you select a programming language for your project? Few developers have the luxury of coding the same design in multiple languages to compare language merits. For over twenty years my undergraduate students have implemented the same large (10-15K lines), multi-tasking, real-time embedded system. In one 15 week semester, student teams specify, design, and implement software to control a substantial model railroad layout. Students implement everything from device drivers for custom I/O hardware to high-level decision making algorithms. Student teams have implemented the project in both Ada and C. This paper describes the course, the laboratory, the project, and an analysis of the results achieved with each of the implementation languages.