Compile-time meta-programming in a dynamically typed OO language.

Tratt, Laurence (2005) Compile-time meta-programming in a dynamically typed OO language. In: Dynamic language symposium, 2005. Association for Computing Machinery (ACM Portal), New York, pp. 49-64.

[img]
Preview
PDF
Download (291kB)

Abstract

Compile-time meta-programming allows programs to be constructed by the user at compile-time. Although LISP derived languages have long had such facilities, few modern
languages are capable of compile-time meta-programming,
and of those that do many of the most powerful are statically typed functional languages. In this paper I present the dynamically typed object orientated language Converge which allows compile-time meta-programming in the spirit of Template Haskell. Converge demonstrates that integrating powerful, safe compile-time meta-programming features into a dynamic language requires few restrictions to the flexible development style facilitated by the paradigm. In this paper I detail Converge’s compile-time meta-programming facilities, much of which is adapted from Template Haskell, contain several features new to the paradigm. Finally I explain how such a facility might be integrated into similar languages.

Item Type: Book Section
Research Areas: A. > School of Science and Technology > Computer and Communications Engineering
Item ID: 5919
Depositing User: Dr Laurence Tratt
Date Deposited: 27 May 2010 13:14
Last Modified: 03 Oct 2015 14:55
URI: http://eprints.mdx.ac.uk/id/eprint/5919

Actions (login required)

Edit Item Edit Item