CSC/ECE 517 Spring 2013/ch1 1h jc

From Expertiza_Wiki
Revision as of 01:04, 15 February 2013 by Jrwills2 (talk | contribs)
Jump to navigation Jump to search

Metaprogramming in statically typed languages

Introduction

What is metaprogramming

Metaprogramming in statically typed languages

Implementation

Exposing the internals of the compiler as an API

Program transformation system

Metaprogramming using Scheme

Common Uses

Pre-generate static data at compile time

Example

Eliminate boiler-plate

Example

Abbreviate statements and prevent mistakes

Example

Metaprogramming Framework in Java

Reflection

Generics

Metadata annotation