Chronological Overview 
 Type-Hierarchical Overview 
Formal Methods in Computing
(Most of the papers antecedent to 1995
are not included in the list)
FRAMES  NO FRAME 

BCV07 (In proceedings)
Author(s) Lorenzo Bettini, Sara Capecchi and Betti Venneri
Title« Featherweight Java with Multi-Methods »
InProc. of PPPJ, Principles and Practice of Programming in Java
Volume272
Page(s)83-92
Year2007
PublisherACM Press
URLhttp://rap.dsi.unifi.it/~bettini/bibliography/files/multifj.pdf
Abstract
Multi-methods (collections of overloaded methods associated to the same message, whose selection takes place dynamically instead of statically as in standard overloading) are a useful mechanism since they unleash the power of dynamic binding in object-oriented languages, so enhancing re-usability and separation of responsibilities. However, many mainstream languages, such as, e.g., Java, do not provide it, resorting to only static overloading. In this paper we propose an extension, we call FMJ (Featherweight Multi Java), of Featherweight Java with encapsulated multi-methods thus providing dynamic overloading. The extension is conservative and type safe: both ``message-not-understood'' and ``message-ambiguous'' are statically ruled out. Our core language can be used as the formal basis for an actual implementation of dynamic overloading in Java-like languages.

BibTeX code

@inproceedings{BCV07,
  volume = {272},
  author = {Bettini, Lorenzo and Capecchi, Sara and Venneri, Betti},
  booktitle = {Proc. of PPPJ, Principles and Practice of Programming in Java},
  url = {http://rap.dsi.unifi.it/~bettini/bibliography/files/multifj.pdf},
  title = {{Featherweight Java with Multi-Methods}},
  abstract = { Multi-methods (collections of overloaded methods associated to
              the same message, whose selection takes place dynamically instead
              of statically as in standard overloading) are a useful mechanism
              since they unleash the power of dynamic binding in object-oriented
              languages, so enhancing re-usability and separation of
              responsibilities. However, many mainstream languages, such as,
              e.g., Java, do not provide it, resorting to only static
              overloading. In this paper we propose an extension, we call FMJ
              (Featherweight Multi Java), of Featherweight Java with
              encapsulated multi-methods thus providing dynamic overloading. The
              extension is conservative and type safe: both
              ``message-not-understood'' and ``message-ambiguous'' are
              statically ruled out. Our core language can be used as the formal
              basis for an actual implementation of dynamic overloading in
              Java-like languages.},
  publisher = {ACM Press},
  pages = {83-92},
  year = {2007},
}


 Chronological Overview 
 Type-Hierarchical Overview 
Formal Methods in Computing
(Most of the papers antecedent to 1995
are not included in the list)
FRAMES  NO FRAME 

This document was generated by bib2html 3.3.
(Modified by Luca Paolini, under the GNU General Public License)

Valid HTML 4.01!