Difference between revisions of "Publications/burrus.03.mpool"

From LRDE

 
Line 6: Line 6:
 
| booktitle = Proceedings of the Workshop on Multiple Paradigm with Object-Oriented Languages (MPOOL)
 
| booktitle = Proceedings of the Workshop on Multiple Paradigm with Object-Oriented Languages (MPOOL)
 
| address = Anaheim, CA, USA
 
| address = Anaheim, CA, USA
| project = Olena
 
| urllrde = 200310-MPOOL
 
 
| abstract = Object-oriented and generic programming are both supported in C++. OOP provides high expressiveness whereas GP leads to more efficient programs by avoiding dynamic typing. This paper presents SCOOP, a new paradigm which enables both classical OO design and high performance in C++ by mixing OOP and GP. We show how classical and advanced OO features such as virtual methods, multiple inheritance, argument covariance, virtual types and multimethods can be implemented in a fully statically typed model, hence without run-time overhead.
 
| abstract = Object-oriented and generic programming are both supported in C++. OOP provides high expressiveness whereas GP leads to more efficient programs by avoiding dynamic typing. This paper presents SCOOP, a new paradigm which enables both classical OO design and high performance in C++ by mixing OOP and GP. We show how classical and advanced OO features such as virtual methods, multiple inheritance, argument covariance, virtual types and multimethods can be implemented in a fully statically typed model, hence without run-time overhead.
 
| lrdepaper = http://www.lrde.epita.fr/dload/papers/mpool03-abstract.pdf
 
| lrdepaper = http://www.lrde.epita.fr/dload/papers/mpool03-abstract.pdf
Line 26: Line 24:
 
address = <nowiki>{</nowiki>Anaheim, CA, USA<nowiki>}</nowiki>,
 
address = <nowiki>{</nowiki>Anaheim, CA, USA<nowiki>}</nowiki>,
 
month = oct,
 
month = oct,
project = <nowiki>{</nowiki>Olena<nowiki>}</nowiki>,
 
 
abstract = <nowiki>{</nowiki>Object-oriented and generic programming are both supported
 
abstract = <nowiki>{</nowiki>Object-oriented and generic programming are both supported
 
in C++. OOP provides high expressiveness whereas GP leads
 
in C++. OOP provides high expressiveness whereas GP leads

Latest revision as of 12:13, 26 April 2016

Abstract

Object-oriented and generic programming are both supported in C++. OOP provides high expressiveness whereas GP leads to more efficient programs by avoiding dynamic typing. This paper presents SCOOP, a new paradigm which enables both classical OO design and high performance in C++ by mixing OOP and GP. We show how classical and advanced OO features such as virtual methods, multiple inheritance, argument covariance, virtual types and multimethods can be implemented in a fully statically typed model, hence without run-time overhead.

Documents

Bibtex (lrde.bib)

@InProceedings{	  burrus.03.mpool,
  author	= {Nicolas Burrus and Alexandre Duret-Lutz and Thierry
		  G\'eraud and David Lesage and Rapha\"el Poss},
  title		= {A static {C++} object-oriented programming ({SCOOP})
		  paradigm mixing benefits of traditional {OOP} and generic
		  programming},
  booktitle	= {Proceedings of the Workshop on Multiple Paradigm with
		  Object-Oriented Languages (MPOOL)},
  year		= 2003,
  address	= {Anaheim, CA, USA},
  month		= oct,
  abstract	= {Object-oriented and generic programming are both supported
		  in C++. OOP provides high expressiveness whereas GP leads
		  to more efficient programs by avoiding dynamic typing. This
		  paper presents SCOOP, a new paradigm which enables both
		  classical OO design and high performance in C++ by mixing
		  OOP and GP. We show how classical and advanced OO features
		  such as virtual methods, multiple inheritance, argument
		  covariance, virtual types and multimethods can be
		  implemented in a fully statically typed model, hence
		  without run-time overhead.}
}