Difference between revisions of "Publications/verna.09.ilc"

From LRDE

 
Line 8: Line 8:
 
| organization = Association of Lisp Users
 
| organization = Association of Lisp Users
 
| abstract = This article reports the results of an ongoing experimental research on the behavior and performance of CLOS, the Common Lisp Object System. Our purpose is to evaluate the behavior and performance of the 3 most important characteristics of any dynamic Object Oriented system: class instantiation, slot access and dynamic dispatch. This paper describes the results of our experiments on instantiation. We evaluate the efficiency of the instantiation process in both C++ and Lisp under a combination of parameters such as slot types or classes hierarchy. We show that in a non-optimized configuration where safety is given priority on speed, the behavior of C++ and Lisp instantiation can be quite different, which is also the case amongst different Lisp compilers. On the other hand, we demonstrate that when compilation is tuned for speed, instantiation in Lisp becomes faster than in C++.
 
| abstract = This article reports the results of an ongoing experimental research on the behavior and performance of CLOS, the Common Lisp Object System. Our purpose is to evaluate the behavior and performance of the 3 most important characteristics of any dynamic Object Oriented system: class instantiation, slot access and dynamic dispatch. This paper describes the results of our experiments on instantiation. We evaluate the efficiency of the instantiation process in both C++ and Lisp under a combination of parameters such as slot types or classes hierarchy. We show that in a non-optimized configuration where safety is given priority on speed, the behavior of C++ and Lisp instantiation can be quite different, which is also the case amongst different Lisp compilers. On the other hand, we demonstrate that when compilation is tuned for speed, instantiation in Lisp becomes faster than in C++.
  +
| lrdeprojects = Climb
 
| lrdepaper = http://www.lrde.epita.fr/dload/papers/verna.09.ilc.pdf
 
| lrdepaper = http://www.lrde.epita.fr/dload/papers/verna.09.ilc.pdf
 
| lrdekeywords = Software engineering
 
| lrdekeywords = Software engineering

Latest revision as of 16:26, 29 January 2019

Abstract

This article reports the results of an ongoing experimental research on the behavior and performance of CLOS, the Common Lisp Object System. Our purpose is to evaluate the behavior and performance of the 3 most important characteristics of any dynamic Object Oriented system: class instantiation, slot access and dynamic dispatch. This paper describes the results of our experiments on instantiation. We evaluate the efficiency of the instantiation process in both C++ and Lisp under a combination of parameters such as slot types or classes hierarchy. We show that in a non-optimized configuration where safety is given priority on speed, the behavior of C++ and Lisp instantiation can be quite different, which is also the case amongst different Lisp compilers. On the other hand, we demonstrate that when compilation is tuned for speed, instantiation in Lisp becomes faster than in C++.

Documents

Bibtex (lrde.bib)

@InProceedings{	  verna.09.ilc,
  author	= {Didier Verna},
  title		= {{CLOS} Efficiency: Instantiation},
  booktitle	= {Proceedings of the International Lisp Conference},
  year		= 2009,
  month		= mar,
  pages		= {76--90},
  organization	= {Association of Lisp Users},
  abstract	= {This article reports the results of an ongoing
		  experimental research on the behavior and performance of
		  CLOS, the Common Lisp Object System. Our purpose is to
		  evaluate the behavior and performance of the 3 most
		  important characteristics of any dynamic Object Oriented
		  system: class instantiation, slot access and dynamic
		  dispatch. This paper describes the results of our
		  experiments on instantiation. We evaluate the efficiency of
		  the instantiation process in both C++ and Lisp under a
		  combination of parameters such as slot types or classes
		  hierarchy. We show that in a non-optimized configuration
		  where safety is given priority on speed, the behavior of
		  C++ and Lisp instantiation can be quite different, which is
		  also the case amongst different Lisp compilers. On the
		  other hand, we demonstrate that when compilation is tuned
		  for speed, instantiation in Lisp becomes faster than in
		  C++.}
}