메뉴 건너뛰기




Volumn 28, Issue 3, 2006, Pages 517-575

MultiJava: Design rationale, compiler implementation, and applications

Author keywords

Encapsulation; Extensible classes; Extensible external methods; External methods; Generic functions; Method families; Modularity; Multimethods; Multiple dispatch; Object oriented programming languages; Open classes; Open objects; Single dispatch

Indexed keywords

EXTENSIBLE CLASSES; EXTENSIBLE EXTERNAL METHODS; EXTERNAL METHODS; GENERIC FUNCTIONS; METHOD FAMILIES; MULTIMETHODS; MULTIPLE DISPATCH; OPEN CLASSES; OPEN OBJECTS; SINGLE DISPATCH;

EID: 33745444346     PISSN: 01640925     EISSN: 01640925     Source Type: Journal    
DOI: 10.1145/1133651.1133655     Document Type: Article
Times cited : (68)

References (85)
  • 1
    • 84976772938 scopus 로고
    • Static type checking of multi-methods
    • OOPSLA '91: Conference Proceedings on Object-Oriented Programming Systems, Languages, and Applications, A. Paepcke, Ed.
    • AGRAWAL, R., DEMICHIEL, L. G., AND LINDSAY, B. G. 1991. Static type checking of multi-methods. In OOPSLA '91: Conference Proceedings on Object-Oriented Programming Systems, Languages, and Applications, A. Paepcke, Ed. ACM SIGPLAN Not. 26, 11, 113-128.
    • (1991) ACM SIGPLAN Not. , vol.26 , Issue.11 , pp. 113-128
    • Agrawal, R.1    Demichiel, L.G.2    Lindsay, B.G.3
  • 5
    • 18144400761 scopus 로고    scopus 로고
    • ASPECTJ TEAM. 2004. The AspectJ programming guide. Available online from http: //eclipse. org/aspectj.
    • (2004) The AspectJ Programming Guide
  • 6
    • 1442333878 scopus 로고    scopus 로고
    • Half & Half: Multiple dispatch and retroactive abstraction for Java
    • Department of Computer Science, The Ohio State University. Columbus, OH
    • BAUMGARTNER, G., JANSCHE, M., AND LÄUPER, K. 2002. Half & Half: Multiple dispatch and retroactive abstraction for Java. Tech. rep. OSU-CISRC-5/01-TR08. Department of Computer Science, The Ohio State University. Columbus, OH.
    • (2002) Tech. Rep. , vol.OSU-CISRC-5-01-TR08
    • Baumgartner, G.1    Jansche, M.2    Läuper, K.3
  • 7
    • 18944398305 scopus 로고    scopus 로고
    • Using kinds to type partially-polymorphic methods
    • G. Barthe and P. Thiemann, Eds. Elsevier, New York, NY
    • BONNIOT, D. 2003. Using kinds to type partially-polymorphic methods. In Electronic Notes in Theoretical Computer Science, G. Barthe and P. Thiemann, Eds. Vol. 75. Elsevier, New York, NY.
    • (2003) Electronic Notes in Theoretical Computer Science , vol.75
    • Bonniot, D.1
  • 10
    • 0346616794 scopus 로고    scopus 로고
    • Parasitic methods: Implementation of multi-methods for Java
    • OOPSLA '97: Proceedings of the 12th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, A. M. Berman, Ed.
    • BOYLAND, J. AND CASTAGNA, G. 1997. Parasitic methods: Implementation of multi-methods for Java. In OOPSLA '97: Proceedings of the 12th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, A. M. Berman, Ed. ACM SIGPLAN Not, 32, 10, 66-76.
    • (1997) ACM SIGPLAN Not , vol.32 , Issue.10 , pp. 66-76
    • Boyland, J.1    Castagna, G.2
  • 11
    • 84976665944 scopus 로고
    • Mixin-based inheritance
    • OOPSLA /ECOOP '90: Proceedings of the European Conference on Object-Oriented Programming on Object-Oriented Programming Systems, Languages, and Applications, N. Meyrowitz, Ed.
    • BRACHA, G. AND COOK, W. 1990. Mixin-based inheritance. In OOPSLA /ECOOP '90: Proceedings of the European Conference on Object-Oriented Programming on Object-Oriented Programming Systems, Languages, and Applications, N. Meyrowitz, Ed. ACM SIGPLAN Not. 25, 10, 303-311.
    • (1990) ACM SIGPLAN Not. , vol.25 , Issue.10 , pp. 303-311
    • Bracha, G.1    Cook, W.2
  • 14
    • 0023961010 scopus 로고
    • A semantics of multiple inheritance
    • CARDELLI, L. 1988. A semantics of multiple inheritance. Inform. Computat. 76, 2/3 (Feb./Mar.), 138-164.
    • (1988) Inform. Computat. , vol.76 , Issue.2-3 FEB.-MAR. , pp. 138-164
    • Cardelli, L.1
  • 15
    • 84976655461 scopus 로고
    • Covariance and contravariance: Conflict without a cause
    • CASTAGNA, G. 1995. Covariance and contravariance: conflict without a cause. ACM Trans. Programm. Lang. Syst. 17, 3, 431-447.
    • (1995) ACM Trans. Programm. Lang. Syst. , vol.17 , Issue.3 , pp. 431-447
    • Castagna, G.1
  • 17
    • 0002214645 scopus 로고
    • A calculus for overloaded functions with subtyping
    • CASTAGNA, G., GHELLI, G., AND LONGO, G. 1995. A calculus for overloaded functions with subtyping. Inform. Computat. 117, 1 (Feb.), 115-135.
    • (1995) Inform. Computat. , vol.117 , Issue.1 FEB , pp. 115-135
    • Castagna, G.1    Ghelli, G.2    Longo, G.3
  • 18
    • 85029501553 scopus 로고
    • Object-oriented multi-methods in Cecil
    • O. L. Madsen, Ed. Lecture Notes in Computer Science. Springer-Verlag, New York, NY
    • CHAMBERS, C. 1992. Object-oriented multi-methods in Cecil. In ECOOP '92, European Conference on Object-Oriented Programming, Utrecht, The Netherlands, O. L. Madsen, Ed. Lecture Notes in Computer Science, vol. 615. Springer-Verlag, New York, NY, 38-56.
    • (1992) ECOOP '92, European Conference on Object-oriented Programming, Utrecht, the Netherlands , vol.615 , pp. 38-56
    • Chambers, C.1
  • 21
    • 17144402252 scopus 로고    scopus 로고
    • Efficient multiple and predicate dispatching
    • OOPSLA '99: Proceedings of the 14th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, A. M. Berman, Ed.
    • CHAMBERS, C. AND CHEN, W. 1999. Efficient multiple and predicate dispatching. In OOPSLA '99: Proceedings of the 14th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, A. M. Berman, Ed. ACM SIGPLAN Not. 34, 10, 238-255.
    • (1999) ACM SIGPLAN Not. , vol.34 , Issue.10 , pp. 238-255
    • Chambers, C.1    Chen, W.2
  • 23
    • 1442284812 scopus 로고    scopus 로고
    • Multi Java: Design, implementation, and evaluation of a Java-compatible language supporting modular open classes and symmetric multiple dispatch
    • Department of Computer Science, Iowa State University, Ames, IA. The author's masters thesis
    • CLIFTON, C. 2001. Multi Java: Design, implementation, and evaluation of a Java-compatible language supporting modular open classes and symmetric multiple dispatch. Tech. Rep. 01-10. Department of Computer Science, Iowa State University, Ames, IA. The author's masters thesis.
    • (2001) Tech. Rep. , vol.1 , Issue.10
    • Clifton, C.1
  • 25
    • 84976712057 scopus 로고
    • Object-oriented programming versus abstract data types
    • J. W. de Bakker, W. P. de Roever, and G. Rozenberg, Eds. Lecture Notes in Computer Science. Springer-Verlag, New York, NY
    • COOK, W. R. 1991. Object-oriented programming versus abstract data types. In Foundations of Object-Oriented Languages, REX School/Workshop, Noordwijkerhout, The Netherlands, May/June 1990, J. W. de Bakker, W. P. de Roever, and G. Rozenberg, Eds. Lecture Notes in Computer Science, vol. 489. Springer-Verlag, New York, NY, 151-178.
    • (1991) Foundations of Object-oriented Languages, REX School/Workshop, Noordwijkerhout, the Netherlands, May/June 1990 , vol.489 , pp. 151-178
    • Cook, W.R.1
  • 26
    • 0032597529 scopus 로고    scopus 로고
    • A fragment calculus-Towards a model of separate compilation, linking and binary compatibility
    • IEEE Computer Science Press, Los Alamitos, CA
    • DROSSOPOULOU, S., EISENBACH, S., AND WRAGG, D. 1999. A fragment calculus-Towards a model of separate compilation, linking and binary compatibility. In Logic in Computer Science. IEEE Computer Science Press, Los Alamitos, CA, 147-156.
    • (1999) Logic in Computer Science , pp. 147-156
    • Drossopoulou, S.1    Eisenbach, S.2    Wragg, D.3
  • 27
    • 17144364689 scopus 로고    scopus 로고
    • Mixin modules
    • ICFP '96: Proceedings of the First ACM SIGPLAN International Conference on Functional Programming, R. L. Wexelblat, Ed.
    • DUGGAN, D. AND SOURELIS, C. 1996. Mixin modules. In ICFP '96: Proceedings of the First ACM SIGPLAN International Conference on Functional Programming, R. L. Wexelblat, Ed. ACM SIGPLAN Not. 31, 6, 262-273.
    • (1996) ACM SIGPLAN Not. , vol.31 , Issue.6 , pp. 262-273
    • Duggan, D.1    Sourelis, C.2
  • 33
    • 0346877083 scopus 로고    scopus 로고
    • Units: Cool modules for hot languages
    • PLDI'98: Proceedings of the ACM SIGPLAN 1998 Conference on Programming Language Design and Implementation, A. M. Berman, Ed.
    • FLATT, M. AND FELLEISEN, M. 1998. Units: Cool modules for hot languages. InPLDI'98: Proceedings of the ACM SIGPLAN 1998 Conference on Programming Language Design and Implementation, A. M. Berman, Ed. ACM SIGPLAN Not. 33, 5, 236-248.
    • (1998) ACM SIGPLAN Not. , vol.33 , Issue.5 , pp. 236-248
    • Flatt, M.1    Felleisen, M.2
  • 41
    • 3042601956 scopus 로고    scopus 로고
    • Programming for pervasive computing environments
    • Department of Computer Science and Engineering, University of Washington, Seattle, WA
    • GRIMM, R., DAWS, J., LEMAR, E., MACBETH, A., SWANSON, S., GRIBBLE, S., ANDERSON, T., BERSHAD, B., BORRIELLO, G., AND WETHERALL, D. 2001. Programming for pervasive computing environments. Tech. Rep. UW-CSE-01-06-01. Department of Computer Science and Engineering, University of Washington, Seattle, WA.
    • (2001) Tech. Rep. , vol.UW-CSE-01-06-01
    • Grimm, R.1    Daws, J.2    Lemar, E.3    Macbeth, A.4    Swanson, S.5    Gribble, S.6    Anderson, T.7    Bershad, B.8    Borriello, G.9    Wetherall, D.10
  • 43
    • 84976708204 scopus 로고
    • Subject-oriented programming (a critique of pure objects)
    • OOPSLA '93: Proceedings of the Eighth Annual Conference on Object-Oriented Programming, Systems, Languages, and Applications, A. Paepcke, Ed.
    • HARRISON, W. AND OSSHER, H. 1993. Subject-oriented programming (a critique of pure objects). In OOPSLA '93: Proceedings of the Eighth Annual Conference on Object-Oriented Programming, Systems, Languages, and Applications, A. Paepcke, Ed. ACM SIGPLAN Not. 28, 10, 411-428.
    • (1993) ACM SIGPLAN Not. , vol.28 , Issue.10 , pp. 411-428
    • Harrison, W.1    Ossher, H.2
  • 45
    • 84976817682 scopus 로고
    • A simple technique for handling multiple polymorphism
    • OOPLSA '86: Conference Proceedings on Object-Oriented Programming Systems, Languages and Applications, N. Meyrowitz, Ed.
    • INGALLS, D. H. H. 1986. A simple technique for handling multiple polymorphism. In OOPLSA '86: Conference Proceedings on Object-Oriented Programming Systems, Languages and Applications, N. Meyrowitz, Ed. ACM SIGPLAN Not. 21,11, 347-349.
    • (1986) ACM SIGPLAN Not. , vol.21 , Issue.11 , pp. 347-349
    • Ingalls, D.H.H.1
  • 49
    • 84858902157 scopus 로고    scopus 로고
    • Kopi 2004
    • Kopi 2004. Kopi project home page. Go online to http://www.dms.at/kopi.
    • Kopi Project Home Page
  • 51
    • 0346877028 scopus 로고    scopus 로고
    • Multiple dispatch as dispatch on tuples
    • OOPSLA '98: Proceedings of the 13th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, A. M. Berman, Ed.
    • LEAVENS, G. T. AND MILLSTEIN, T. D. 1998. Multiple dispatch as dispatch on tuples. In OOPSLA '98: Proceedings of the 13th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, A. M. Berman, Ed. ACM SIGPLAN Not. 33, 10, 374-387.
    • (1998) ACM SIGPLAN Not. , vol.33 , Issue.10 , pp. 374-387
    • Leavens, G.T.1    Millstein, T.D.2
  • 56
    • 11344266197 scopus 로고    scopus 로고
    • Java, the good, the bad and the ugly
    • MARTIN, P. 1998. Java, the good, the bad and the ugly. ACM SIGPLAN Not. 33, 4 (Apr.), 34-39.
    • (1998) ACM SIGPLAN Not. , vol.33 , Issue.4 APR , pp. 34-39
    • Martin, P.1
  • 58
  • 61
    • 0037172648 scopus 로고    scopus 로고
    • Modular statically typed multimethods
    • MILLSTEIN, T. AND CHAMBERS, C. 2002. Modular statically typed multimethods. Inform. Computat. 175, 1 (May), 76-118.
    • (2002) Inform. Computat. , vol.175 , Issue.1 MAY , pp. 76-118
    • Millstein, T.1    Chambers, C.2
  • 64
    • 0005003952 scopus 로고    scopus 로고
    • Default and extrinsic visitor
    • R. C. Martin, D. Riehle, and F. Buschmann, Eds. Addison-Wesley, Reading, MA
    • NORDBERG, M. E. 1998. Default and extrinsic visitor. In Pattern Languages of Program Design 3, R. C. Martin, D. Riehle, and F. Buschmann, Eds. Addison-Wesley, Reading, MA, 105-123.
    • (1998) Pattern Languages of Program Design , vol.3 , pp. 105-123
    • Nordberg, M.E.1
  • 68
    • 0002552930 scopus 로고    scopus 로고
    • Using multidimensional separation of concerns to (re)shape evolving software
    • OSSHER, H. AND TARR, P. 2001. Using multidimensional separation of concerns to (re)shape evolving software. Commun. ACM 44, 10 (Oct.), 43-50.
    • (2001) Commun. ACM , vol.44 , Issue.10 OCT , pp. 43-50
    • Ossher, H.1    Tarr, P.2
  • 71
    • 0015482049 scopus 로고
    • On the criteria to be used in decomposing systems into modules
    • PARNAS, D. L. 1972. On the criteria to be used in decomposing systems into modules. Commun. ACM IB, 12 (Dec.), 1053-1058.
    • (1972) Commun. ACM IB , vol.12 , Issue.DEC , pp. 1053-1058
    • Parnas, D.L.1
  • 72
    • 84942008804 scopus 로고
    • Software engineering or methods for the multi-person construction of multi-version programs
    • C. E. Hackl, Ed. Lecture Notes in Computer Science. Springer-Verlag, New York, NY
    • PARNAS, D. L. 1975. Software engineering or methods for the multi-person construction of multi-version programs. In Programming Methodology, 4th Informatik Symposium, IBM Germany, Wildbad, 25-27 September, 1974, C. E. Hackl, Ed. Lecture Notes in Computer Science, vol. 23. Springer-Verlag, New York, NY, 225-235.
    • (1975) Programming Methodology, 4th Informatik Symposium, IBM Germany, Wildbad, 25-27 September, 1974 , vol.23 , pp. 225-235
    • Parnas, D.L.1
  • 74
    • 84858892393 scopus 로고    scopus 로고
    • Rain 2004
    • Rain 2004. Rain home page. Go online to http://seattleweb.intel\_research. net/projects/ rain.
    • Rain Home Page
  • 75
    • 12844286669 scopus 로고
    • User-defined types and procedural data structures as complementary approaches to type abstraction
    • S. A. Schuman, Ed. INRIA, Rocquencourt, France
    • REYNOLDS, J. C. 1975. User-defined types and procedural data structures as complementary approaches to type abstraction. In New Directions in Algorithmic Languages, S. A. Schuman, Ed. INRIA, Rocquencourt, France, 157-168.
    • (1975) New Directions in Algorithmic Languages , pp. 157-168
    • Reynolds, J.C.1
  • 76
    • 85000828188 scopus 로고
    • Using category theory to design implicit conversions and generic operators
    • N. D. Jones, Ed. Lecture Notes in Computer Science. Springer-Verlag, New York, NY
    • REYNOLDS, J. C. 1980. Using category theory to design implicit conversions and generic operators. In Semantics-Directed Compiler Generation, Proceedings of a Workshop, Aarhus, Denmark, N. D. Jones, Ed. Lecture Notes in Computer Science, vol. 94. Springer-Verlag, New York, NY, 211-258.
    • (1980) Semantics-directed Compiler Generation, Proceedings of a Workshop, Aarhus, Denmark , vol.94 , pp. 211-258
    • Reynolds, J.C.1
  • 81
    • 35048863527 scopus 로고    scopus 로고
    • The expression problem revisited: Four new solutions using generics
    • M. Odersky, Ed. Lecture Notes in Computer Science. Springer-Verlag, New York, NY
    • TORGERSEN, M. 2004. The expression problem revisited: Four new solutions using generics. In ECOOP 2004-Object-Oriented Programming, 18th European Conference, Oslo, Norway, Proceedings, M. Odersky, Ed. Lecture Notes in Computer Science, vol. 3086. Springer-Verlag, New York, NY, 123-143.
    • (2004) ECOOP 2004-object-oriented Programming, 18th European Conference, Oslo, Norway, Proceedings , vol.3086 , pp. 123-143
    • Torgersen, M.1
  • 83
    • 0005310357 scopus 로고    scopus 로고
    • Visitor in frameworks
    • VLISSIDES, J. 1999. Visitor in frameworks. C++ Rep. 11, 10 (Nov./Dec.), 40-46.
    • (1999) C++ Rep. , vol.11 , Issue.10 NOV.-DEC. , pp. 40-46
    • Vlissides, J.1


* 이 정보는 Elsevier사의 SCOPUS DB에서 KISTI가 분석하여 추출한 것입니다.