The production of embedded systems is continuously increasing, but developing reusable software f... more The production of embedded systems is continuously increasing, but developing reusable software for such systems is notoriously difficult, in particular in the case of low-end embedded systems based on 16-bit or 8-bit processors. We have developed a compilation system for executing Java byte code on low-end embedded systems, and we demonstrate how this system permits object-oriented programming techniques to be used on devices with only a few hundred bytes of RAM and a few kilobytes of ROM.We analyze the execution overheads of using object-orien\-ted programming on low-end embedded systems. Based on the conclusion that memory consumption is the major obstacle, we show how the configuration features and optimizations integrated into our compiler can be used to significantly reduce memory requirements. In particular, we use a novel approach based on Java interfaces to control integration of Java programs with the hardware, and demonstrate how aggressive whole-program optimization can ...
The Mjølner BETA System is an integrated and interactive programming environment with support for... more The Mjølner BETA System is an integrated and interactive programming environment with support for industrial object oriented programming. The Mjølner BETA System is a result of the Scandinavian research project Mjølner. The integration of the various tools in the Mjølner BETA System is established by insisting that all tools in the system utilizes on single representation of the program. This representation is abstract syntax trees (ASTs). All manipulations of the ASTs by the various tools are done utilizing the metaprogramming system which defines an interface to the AST and ways to manipulate the AST.
There are two trends in the development of modern object oriented systems: they are getting more ... more There are two trends in the development of modern object oriented systems: they are getting more complex and they have to cope with an increasing number of exceptional situations. The most general way of dealing with these problems is by employing exception handling techniques. Many object oriented mechanisms for handling exceptions have been proposed but there still are serious problems in applying them in practice. These are caused by: - complexity of exception code design and analysis, - not addressing exception handling at the appropriate phases of system development, - lack of methodologies supporting the proper use of exception handling o not developing specific mechanisms suitable for particular application domains and design paradigms. Following the success of ECOOP 2000 workshop, this workshop aims at achieving better understanding of how exceptions should be handled in object oriented systems, including all aspects of software design and use: novel linguistic mechanisms, d...
Daniel C. Junqueira, Thiago J. Bittar, Renata PM Fortes, A fine-grained and flexible version cont... more Daniel C. Junqueira, Thiago J. Bittar, Renata PM Fortes, A fine-grained and flexible version control for software artifacts, Proceedings of the 26th annual ACM international conference on Design of communication, September 22-24, 2008, Lisbon, Portugal
Today, object-oriented language designers and users are showing a renewed interest in exception h... more Today, object-oriented language designers and users are showing a renewed interest in exception han-dling. Exception handling systems have recently been, or are being, integrated into many object-oriented languages (C++ (Koenig & Stroustrup, 1990), CommonLisp(+CLOS) ...
The production of embedded systems is continuously increasing, but developing reusable software f... more The production of embedded systems is continuously increasing, but developing reusable software for such systems is notoriously difficult, in particular in the case of low-end embedded systems based on 16-bit or 8-bit processors. We have developed a compilation system for executing Java byte code on low-end embedded systems, and we demonstrate how this system permits object-oriented programming techniques to be used on devices with only a few hundred bytes of RAM and a few kilobytes of ROM.We analyze the execution overheads of using object-orien\-ted programming on low-end embedded systems. Based on the conclusion that memory consumption is the major obstacle, we show how the configuration features and optimizations integrated into our compiler can be used to significantly reduce memory requirements. In particular, we use a novel approach based on Java interfaces to control integration of Java programs with the hardware, and demonstrate how aggressive whole-program optimization can ...
The Mjølner BETA System is an integrated and interactive programming environment with support for... more The Mjølner BETA System is an integrated and interactive programming environment with support for industrial object oriented programming. The Mjølner BETA System is a result of the Scandinavian research project Mjølner. The integration of the various tools in the Mjølner BETA System is established by insisting that all tools in the system utilizes on single representation of the program. This representation is abstract syntax trees (ASTs). All manipulations of the ASTs by the various tools are done utilizing the metaprogramming system which defines an interface to the AST and ways to manipulate the AST.
There are two trends in the development of modern object oriented systems: they are getting more ... more There are two trends in the development of modern object oriented systems: they are getting more complex and they have to cope with an increasing number of exceptional situations. The most general way of dealing with these problems is by employing exception handling techniques. Many object oriented mechanisms for handling exceptions have been proposed but there still are serious problems in applying them in practice. These are caused by: - complexity of exception code design and analysis, - not addressing exception handling at the appropriate phases of system development, - lack of methodologies supporting the proper use of exception handling o not developing specific mechanisms suitable for particular application domains and design paradigms. Following the success of ECOOP 2000 workshop, this workshop aims at achieving better understanding of how exceptions should be handled in object oriented systems, including all aspects of software design and use: novel linguistic mechanisms, d...
Daniel C. Junqueira, Thiago J. Bittar, Renata PM Fortes, A fine-grained and flexible version cont... more Daniel C. Junqueira, Thiago J. Bittar, Renata PM Fortes, A fine-grained and flexible version control for software artifacts, Proceedings of the 26th annual ACM international conference on Design of communication, September 22-24, 2008, Lisbon, Portugal
Today, object-oriented language designers and users are showing a renewed interest in exception h... more Today, object-oriented language designers and users are showing a renewed interest in exception han-dling. Exception handling systems have recently been, or are being, integrated into many object-oriented languages (C++ (Koenig & Stroustrup, 1990), CommonLisp(+CLOS) ...
Uploads
Papers by Jørgen L Knudsen