Hi,
I created a web page for the theses of the student projects I have
talked about on the list during the last couple of months. Not all pdf
are up yet but hopefully I’ll have the time to add them before going on
a 3-week vacation (with no/little Internet connection!) tomorrow.
Feedback and comments appreciated.
http://www.pronovomundo.com/htu/theses2004/
Jan-Åke Hedström, "RubySharp A Ruby to CIL Compiler"
This paper describes the development of RubySharp, a proof-of-concept
compiler. It is able to compile a subset of features from the dynamic
programming language Ruby into CIL (Common Intermediate Language), which
is a static assembler intermediate language in the .NET platform. The
language constructs of Ruby and CIL are examined to see what
similarities and differences that exist. To be able to support the
correct Ruby behaviour in all compiled programs, a class hierarchy is
developed for RubySharp. Additionally, basic goal programs are defined
in Ruby and in CIL, forming a specification for the RubySharp compiler
on how to compile the goal programs. Furthermore, other Ruby language
constructs, besides these introduced by the goal programs, are also
examined to see if and how they can be implemented on the .NET platform.
Kerstin Lyngfelt, "MorphR a Morphic GUI in Ruby"
Building Graphical User Interfaces (GUI) has always been a challenge for
software engineers. Many patterns have been developed to help software
engineers in their work, some patterns with longer lifetime than others.
One pattern that has been used since the late 1970s is the
Model-View-Controller (MVC). The MVC pattern has limitations and
therefore modifications to the MVC pattern have been made to suit
different purposes. In this study, which aims to design and implement a
modern, flexible, easily extendible vector-based GUI for a dynamic
programming language, both the MVC pattern and other design options like
Morphic and Ion were analyzed. This paper initially looks at how MVC has
been implemented in different GUI frameworks and furthermore takes the
first step in applying said design in a flexible implementation in Ruby.
It will also look at how to use themes in order to provide different
graphical options of the same application.
Regards,
Robert Feldt