Content area
Using the Ruby Language as a Programming Environment for a Robotics Lab-Based Class Abstract The object-oriented, scripting language Ruby, is becoming popular in information technology and computer-oriented educational programs. Yukihiro Matsumoto has indicated that the language was designed with the principle of “least surprise” to help programmers convert ideas into working programs quickly and to have fun. Ruby was designed for applications in many of the modern application areas of software development, including text processing, network programming, interfacing to CGI and XML and addressing Internet-oriented applications. It is also intended to make programming fun for students.
Ruby can also be used for embedded system programming. The general advantages of Ruby programming also apply to this domain. The Ruby interpreter allows rapid development and testing, including wireless tele-operation of mobile robots for prototyping. Since Ruby was not primarily designed for this type of application some adaptations are necessary. Extensions to the language are necessary to allow for real-time interfacing. These and related topics are discussed in the paper.
This paper discusses a semester-long experience of adapting Ruby to serve the needs of a robotics-design, lab-oriented course and evaluates the benefits and disadvantages of Ruby both for embedded development in general and as a teaching tool.