Generative Programming: Past, present, and future - PowerPoint PPT Presentation

1 / 5
About This Presentation
Title:

Generative Programming: Past, present, and future

Description:

6 different participants with specific contact information. Numerous places within each document where parts of contact information is to be ... – PowerPoint PPT presentation

Number of Views:57
Avg rating:3.0/5.0
Slides: 6
Provided by: gray
Category:

less

Transcript and Presenter's Notes

Title: Generative Programming: Past, present, and future


1
Generative Programming Past, present, and future
  • A panel at GPCE 2004
  • Vancouver, BC
  • October 27, 2004

Jeff Gray, University of Alabama at Birmingham
2
How to teach it? to my mother
Assist in automating tasks that are mundane and
manual, such that error prone nature is removed
and productivity is improved.
  • Context Real Estate Legal Forms
  • 15 different documents
  • 6 different participants with specific contact
    information
  • Numerous places within each document where parts
    of contact information is to be inserted

Note Some internal generator living within word
processor
3
How to teach it? to my father-in-law
Assist in mitigating effects of accidental
complexities.
- Reducing all images to common sizes, producing
thumbnails, providing a general index, linking
all pictures in a slide show - Many hours to do
manually about 20 seconds in Web Picture
Creator
4
How to teach it? to my grad students
  • The previous were somewhat embarrassingly simple
    examples, but perhaps offers insight into
    essential characteristics of GP that could be
    understood by laypersons
  • A key is relating experiences with and
    without the availability of certain tools
  • For Grad students
  • Provide a 5k SLOC sample application
  • Traditional Adaptation Ask them to perform an
    adaptation using traditional development (e.g.,
    plain Java in Eclipse)
  • Metaprogramming and reflection Introduce core
    literature and related tools request students to
    perform same changes using OpenJava, Javassist,
    JMangler, etc
  • AOSD introduce core literature in AOSD and
    tools request students to perform same changes
    using AspectJ
  • Metamodeling introduce core literature and GME
    request students to perform generative tasks on
    domain-specific models
  • More info http//www.cis.uab.edu/gray/Pubs/scicop
    -2004.pdf

5
What do we do next?
  • Key challenge
  • managing the syntactic mismatch between
    abstraction layers
  • Examples
  • Debugging and testing a DSL program (e.g.,
    debugging YACC output)
  • It would be desirable to do this at the
    abstraction of the conceptual artifact
  • Version control of models/visualization
  • Forced to view differences as flat text files
    (perhaps in XML!), rather than the abstraction
    provided by the modeling tool
Write a Comment
User Comments (0)
About PowerShow.com