Efficient virtual machine support of runtime structural reflection

Saved in:
Bibliographic Details
Title: Efficient virtual machine support of runtime structural reflection
Authors: Ortin, Francisco1 http://www.di.uniovi.es/~ortin/, Redondo, Jose Manuel1 http://www.di.uniovi.es/~redondojose/, Baltasar García Perez-Schofield, J.2 http://webs.uvigo.es/jbgarcia/
Source: Science of Computer Programming. Aug2009, Vol. 74 Issue 10, p836-860. 25p.
Subjects: Virtual machine systems, Dylan (Computer program language), Programming languages, Distributed computing, Coding theory, Common Language Runtime (Computer science), Computer software, Computer simulation
Abstract: Abstract: Increasing trends towards adaptive, distributed, generative and pervasive software have made object-oriented dynamically typed languages become increasingly popular. These languages offer dynamic software evolution by means of reflection, facilitating the development of dynamic systems. Unfortunately, this dynamism commonly imposes a runtime performance penalty. In this paper, we describe how to extend a production JIT-compiler virtual machine to support runtime object-oriented structural reflection offered by many dynamic languages. Our approach improves runtime performance of dynamic languages running on statically typed virtual machines. At the same time, existing statically typed languages are still supported by the virtual machine. We have extended the .Net platform with runtime structural reflection adding prototype-based object-oriented semantics to the statically typed class-based model of .Net, supporting both kinds of programming languages. The assessment of runtime performance and memory consumption has revealed that a direct support of structural reflection in a production JIT-based virtual machine designed for statically typed languages provides a significant performance improvement for dynamically typed languages. [Copyright &y& Elsevier]
Copyright of Science of Computer Programming is the property of Elsevier B.V. and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
Database: Engineering Source
FullText Text:
  Availability: 0
Header DbId: egs
DbLabel: Engineering Source
An: 43304893
AccessLevel: 6
PubType: Academic Journal
PubTypeId: academicJournal
PreciseRelevancyScore: 0
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: Efficient virtual machine support of runtime structural reflection
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Ortin%2C+Francisco%22">Ortin, Francisco</searchLink><relatesTo>1</relatesTo><i> http://www.di.uniovi.es/~ortin/</i><br /><searchLink fieldCode="AR" term="%22Redondo%2C+Jose+Manuel%22">Redondo, Jose Manuel</searchLink><relatesTo>1</relatesTo><i> http://www.di.uniovi.es/~redondojose/</i><br /><searchLink fieldCode="AR" term="%22Baltasar+García+Perez-Schofield%2C+J%2E%22">Baltasar García Perez-Schofield, J.</searchLink><relatesTo>2</relatesTo><i> http://webs.uvigo.es/jbgarcia/</i>
– Name: TitleSource
  Label: Source
  Group: Src
  Data: <searchLink fieldCode="JN" term="%22Science+of+Computer+Programming%22">Science of Computer Programming</searchLink>. Aug2009, Vol. 74 Issue 10, p836-860. 25p.
– Name: Subject
  Label: Subjects
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22Virtual+machine+systems%22">Virtual machine systems</searchLink><br /><searchLink fieldCode="DE" term="%22Dylan+%28Computer+program+language%29%22">Dylan (Computer program language)</searchLink><br /><searchLink fieldCode="DE" term="%22Programming+languages%22">Programming languages</searchLink><br /><searchLink fieldCode="DE" term="%22Distributed+computing%22">Distributed computing</searchLink><br /><searchLink fieldCode="DE" term="%22Coding+theory%22">Coding theory</searchLink><br /><searchLink fieldCode="DE" term="%22Common+Language+Runtime+%28Computer+science%29%22">Common Language Runtime (Computer science)</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+software%22">Computer software</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+simulation%22">Computer simulation</searchLink>
– Name: Abstract
  Label: Abstract
  Group: Ab
  Data: Abstract: Increasing trends towards adaptive, distributed, generative and pervasive software have made object-oriented dynamically typed languages become increasingly popular. These languages offer dynamic software evolution by means of reflection, facilitating the development of dynamic systems. Unfortunately, this dynamism commonly imposes a runtime performance penalty. In this paper, we describe how to extend a production JIT-compiler virtual machine to support runtime object-oriented structural reflection offered by many dynamic languages. Our approach improves runtime performance of dynamic languages running on statically typed virtual machines. At the same time, existing statically typed languages are still supported by the virtual machine. We have extended the .Net platform with runtime structural reflection adding prototype-based object-oriented semantics to the statically typed class-based model of .Net, supporting both kinds of programming languages. The assessment of runtime performance and memory consumption has revealed that a direct support of structural reflection in a production JIT-based virtual machine designed for statically typed languages provides a significant performance improvement for dynamically typed languages. [Copyright &y& Elsevier]
– Name: AbstractSuppliedCopyright
  Label:
  Group: Ab
  Data: <i>Copyright of Science of Computer Programming is the property of Elsevier B.V. and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.)
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=egs&AN=43304893
RecordInfo BibRecord:
  BibEntity:
    Identifiers:
      – Type: doi
        Value: 10.1016/j.scico.2009.04.001
    Languages:
      – Code: eng
        Text: English
    PhysicalDescription:
      Pagination:
        PageCount: 25
        StartPage: 836
    Subjects:
      – SubjectFull: Virtual machine systems
        Type: general
      – SubjectFull: Dylan (Computer program language)
        Type: general
      – SubjectFull: Programming languages
        Type: general
      – SubjectFull: Distributed computing
        Type: general
      – SubjectFull: Coding theory
        Type: general
      – SubjectFull: Common Language Runtime (Computer science)
        Type: general
      – SubjectFull: Computer software
        Type: general
      – SubjectFull: Computer simulation
        Type: general
    Titles:
      – TitleFull: Efficient virtual machine support of runtime structural reflection
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Ortin, Francisco
      – PersonEntity:
          Name:
            NameFull: Redondo, Jose Manuel
      – PersonEntity:
          Name:
            NameFull: Baltasar García Perez-Schofield, J.
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 15
              M: 08
              Text: Aug2009
              Type: published
              Y: 2009
          Identifiers:
            – Type: issn-print
              Value: 01676423
          Numbering:
            – Type: volume
              Value: 74
            – Type: issue
              Value: 10
          Titles:
            – TitleFull: Science of Computer Programming
              Type: main
ResultId 1