TL;DR: A general tool is described that takes a Eiffel program that uses the separate keyword and translates it into an EIFFel multi-threaded program that using the Eiffels T HREAD class.
Abstract: The Simple Concurrent Object-Oriented Programming (SCOOP) mechanism introduces inter-object concurrency to the Eiffel language, via addition of one new keyword, separate. We describe a general tool that takes a Eiffel program that uses the separate keyword and translates it into an Eiffel multi-threaded program that uses the Eiffel T HREAD class. The resulting code is thereafter compatible with EiffelStudio and any other Eiffel compiler that provides the T HREAD class.
TL;DR: This thesis presents a prooftransforming compiler for a subset of Eiffel to .NET CIL and introduces new translations of the EIFFel specific keywords and then and or else.
Abstract: The execution of untrusted bytecode (such as mobile code) can produce unwanted behavior. A proof on the bytecode programs can be generated to ensure safe execution. Automatic techniques to generate proofs, such as certifying compilation, can only be used for a restricted set of properties such as type safety. In this thesis we present a prooftransforming compiler for a subset of Eiffel to .NET CIL. In particular we introduce new translations of the Eiffel specific keywords and then and or else. Furthermore we formalized the translation of classes routines and attributes. To show the feasibility of the approach we developed an PTC and a corresponding interface in EiffelStudio.
TL;DR: EiffelVision (EV) is an object-oriented framework for graphical user interface (GUI) development, created by Eiffel Software and its major application is EIFFelStudio.
Abstract: EiffelVision (EV) is an object-oriented framework for graphical user interface (GUI) development, created by Eiffel Software. EV is the main GUI toolkit for Eiffel and its major application is EiffelStudio [3]. EiffelVision is portable and currently runs on Windows and all major versions of Unix (using GTK+). A native version of EV for Mac OS X has been developed by Daniel Furrer [4]. However, it is only partially implemented and it is not usable yet.
TL;DR: The aim is to extend EVE, the research branch of EiffelStudio with the ability to browse serialized objects, which can be in the dADL or binary format, and write them back after having changed the values of some elementary fields.
Abstract: The second goal of this thesis is to integrate the Eiffel object browser standalone application (Ebbro [5]), completed with the capability to read and write both the serialization formats, into the EiffelStudio research branch, called EVE [4]. Scope of the work The aim is to extend EVE, the research branch of EiffelStudio with the ability to browse serialized objects, which can be in the dADL or binary format, and write them back after having changed the values of some elementary fields.
TL;DR: Key aspects of software development, in particular testing and debugging, still commonly rely on manual techniques, but if the programs contain enough built-in correctness information, in the form of contracts, it is possible to automate some of the most tedious and error-prone aspects of testing, and even to perform corrections automatically.
Abstract: Key aspects of software development, in particular testing and debugging, still commonly rely on manual techniques. If the programs contain enough built-in correctness information, in the form of contracts, it is possible to automate some of the most tedious and error-prone aspects of testing, and even to perform corrections automatically.
At both ETH and Eiffel Software we have developed such techniques and integrated them into Eiffel programming environments, in the form of tools for automated program testing and automated program fixing: the AutoTest and AutoFix frameworks.
Some of the work is still research in progress, but many results have already been integrated in the production version of the EiffelStudio environment.