Static meta-object protocols: towards efficient reflective object-oriented languages

Research output: Contribution to conferenceOther

Abstract

Reflection and extensibility in object-oriented programming languages can be supported by meta-object protocols (MOP) that define class-based interfaces over data representation and execution features. MOPs are typically dynamic in the sense that type-based dispatching is used to select between feature implementations at run time leading to a significant difference in execution speed compared to non-MOP-based languages. Defining a corresponding static-MOP would seem to be a solution whereby type-dispatching can occur at compile time. Such an approach requires the integration of a static type system with a MOP. This paper introduces a new reflective and extensible language called JMF written in Java that aims to generate efficient code through the use of a static-MOP. The contribution of this paper is to characterise a static-MOP and to show how it integrates with a type system for JMF.
Original languageEnglish
Pages160-167
DOIs
Publication statusPublished - 2016
EventCompanion the 15th International Conference - Málaga, Spain
Duration: 14 Mar 201617 Mar 2016

Conference

ConferenceCompanion the 15th International Conference
Period14/03/1617/03/16

Fingerprint

Object oriented programming
Network protocols
Computer programming languages
Interfaces (computer)

Cite this

@conference{58846e2819f8452184805e39639b352c,
title = "Static meta-object protocols: towards efficient reflective object-oriented languages",
abstract = "Reflection and extensibility in object-oriented programming languages can be supported by meta-object protocols (MOP) that define class-based interfaces over data representation and execution features. MOPs are typically dynamic in the sense that type-based dispatching is used to select between feature implementations at run time leading to a significant difference in execution speed compared to non-MOP-based languages. Defining a corresponding static-MOP would seem to be a solution whereby type-dispatching can occur at compile time. Such an approach requires the integration of a static type system with a MOP. This paper introduces a new reflective and extensible language called JMF written in Java that aims to generate efficient code through the use of a static-MOP. The contribution of this paper is to characterise a static-MOP and to show how it integrates with a type system for JMF.",
author = "Tony Clark",
year = "2016",
doi = "10.1145/2892664.2892694",
language = "English",
pages = "160--167",
note = "Companion the 15th International Conference ; Conference date: 14-03-2016 Through 17-03-2016",

}

Clark, T 2016, 'Static meta-object protocols: towards efficient reflective object-oriented languages' Companion the 15th International Conference, 14/03/16 - 17/03/16, pp. 160-167. https://doi.org/10.1145/2892664.2892694

Static meta-object protocols : towards efficient reflective object-oriented languages. / Clark, Tony.

2016. 160-167 Companion the 15th International Conference, .

Research output: Contribution to conferenceOther

TY - CONF

T1 - Static meta-object protocols

T2 - towards efficient reflective object-oriented languages

AU - Clark, Tony

PY - 2016

Y1 - 2016

N2 - Reflection and extensibility in object-oriented programming languages can be supported by meta-object protocols (MOP) that define class-based interfaces over data representation and execution features. MOPs are typically dynamic in the sense that type-based dispatching is used to select between feature implementations at run time leading to a significant difference in execution speed compared to non-MOP-based languages. Defining a corresponding static-MOP would seem to be a solution whereby type-dispatching can occur at compile time. Such an approach requires the integration of a static type system with a MOP. This paper introduces a new reflective and extensible language called JMF written in Java that aims to generate efficient code through the use of a static-MOP. The contribution of this paper is to characterise a static-MOP and to show how it integrates with a type system for JMF.

AB - Reflection and extensibility in object-oriented programming languages can be supported by meta-object protocols (MOP) that define class-based interfaces over data representation and execution features. MOPs are typically dynamic in the sense that type-based dispatching is used to select between feature implementations at run time leading to a significant difference in execution speed compared to non-MOP-based languages. Defining a corresponding static-MOP would seem to be a solution whereby type-dispatching can occur at compile time. Such an approach requires the integration of a static type system with a MOP. This paper introduces a new reflective and extensible language called JMF written in Java that aims to generate efficient code through the use of a static-MOP. The contribution of this paper is to characterise a static-MOP and to show how it integrates with a type system for JMF.

UR - https://dl.acm.org/citation.cfm?doid=2892664.2892694

U2 - 10.1145/2892664.2892694

DO - 10.1145/2892664.2892694

M3 - Other

SP - 160

EP - 167

ER -