Joost Visser - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Joost Visser

Description:

Joost Visser (inspired by joint work with Arie van Deursen, Merijn de Jonge, ... grow bibliographies, glossary, indexes. maintain event calendar ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 18
Provided by: joostv7
Category:

less

Transcript and Presenter's Notes

Title: Joost Visser


1
Collaboration in the Generative Programming
Universe
Joost Visser (inspired by joint work with Arie
van Deursen, Merijn de Jonge, Leon Moonen, and
Eelco Visser)
Workshop on Generative Programming - Málaga - 2002
2
What's happening in the Generative Programming
community?
Workshops GP2001_at_ecoop, GP2001_at_oopsla,
GP2002_at_icsr, GP2002_at_ecoop, GTPL2000_at_splc,
GTPL2001_at_icse, ...
Conferences GCSE1999 -2001, SAIG2000 -2001,
SPLC1-2, GPCE2002, ...
Summer school Tampere, Finland
Tools Draco, GenVoca, DMS, Gears, AOG, TL,
MetaTool,Jasper, GOO, Jostraca, Coder, ...
Companies Bayfront Technologies,
Daimler-Crysler, Semantic Designs, Oracle,
DoCoMo, Montages Software Services, ...
3
Topic
Goal of Generative Programming Integrate
knowledge of individual developers and
functionality of distinct software products into
a coherent, yet flexible infrastructure for
software production.
Topic of this talk Integrate knowledge of
individual researchers and functionality of
distinct generative tools into a coherent, yet
flexible infrastructure for scientific production.
dream on!
4
Coherent, yet flexible infrastructure
Ingredients
  • Collaborative web authoring
  • WikiWiki
  • www.program-transformation.org/gp/
  • Collaborative software development
  • Exchange formats
  • Online component repositories
  • www.program-transformation.org/package-base/

5
Generative Programming Wiki
What is it?
WikiWiki WikiWiki is Hawaiian for "Fast
!!" Light-weight, easy-to-use system for
collaborative web content management. Edit pages
via your browser. Any word with 2 non-consecutive
capitals is a link.
GPWiki Based on TWiki. Fully transparent
versioning system (CVS inside). Many extras
personal preferences, search scripts, file
attachments, editable side-bars, namespaces,
escape to HTML, change notification, statistics,
...
6
Generative Programming Wiki
What is it good for?
  • summarize discussions (workshop debate, mailing
    list)
  • present approaches, methods, subfields
  • advertise tools, systems, languages, libraries
  • develop surveys, taxonomies
  • conduct comparative studies
  • grow bibliographies, glossary, indexes
  • maintain event calendar
  • vent opinions, ponder hunches, outline
    perspectives

7
Generative Programming Wiki
What is there now?
Some pages GenerativeProgramming (definitions),
GenerativeEvents (calendar), GenerativePeople,
GenerativeTools, GenerativeCompanies,
GenerativeSuccessStories, DomainEngineering,
PublicationsOnGenerativeProgramming,
SoftwareProductLines, DomainSpecificLanguages,
Some categories CategoryDSL,
CategoryDomainEngineering, CategoryTutorial,
CategorySystem, CategoryReview, CategoryTaxonomy,
CategoryOptimization, ... Shared wiki
with Program Transformation, Re-engineering
8
Generative Programming Wiki
How to contribute?
Advertise Add info on and pointers to yourself,
your own work, tools, company, publications,
events you organize. Compare Add comparisons of
your own work to that of others, explain position
your work within the field. Survey Categorize,
review, evaluate anything present on the Wiki.
Contribute to surveys, taxonomies,
glossaries. Host Use the wiki to host an event
you organize. Idem for the homepage of a project
or tool. Extend Initiate a new page on any topic
you deem relevant.
don't be shy !!
9
Collaborative Software Development
Ingredients
  • Exchange formats
  • Decide on common exchange format(s).
  • Let generators, components, front-ends,
    back-ends, etc. exchange data in common format.
  • We use ATerms.
  • Online component repositories
  • Use common interface for building, testing,
    distributing individual packages.
  • Contribute package descriptions to repository.
  • Provide interface for package selection and
    bundling.
  • We use autobundle.

10
Collaborative Software Development
Experiences
  • Background
  • CWI, Utrecht University, Loria, SIG, VU
  • Language prototyping, compiler construction,
    program transformation, software renovation,
    documentation generation,
  • Many different projects, tools, systems with
    mostly ad-hoc reuse among them.
  • Current situation
  • Online package repository holds 57 packages.
  • Packages originate from legacy' systems, new
    developments, third parties.
  • Top-level packages are complete systems such as
    ASFSDF Meta-Environment, Stratego compiler,
    JJForester, XT, ELAN compiler, ...

11
Collaborative Software Development
Package dependencies
  • Transitive reduction of reuse relationships
    among some 50 packages.
  • Generated by autobundle behind package base web
    interface.

12
Collaborative Software Development
GP Perspectives
Product C
Product B
Product A
  • Reuse across productlines.
  • Reuse between components and generators.
  • Reuse between program-transformers and
    generators.
  • Reuse is a catalyst for collaboration

Product Line
stop dreaming !!
13
Collaboration in the GP Universe
That's all folks
GP Wiki (collaborative web authoring) www.program
-transformation.org/gp/
Online package base (collaborative software
dev.) www.program-transformation.org/package-base
/
Both self-maintainable, structured, evolvable,
open, easy-to use, light-weight, ...
14
Collaboration in the GP Universe
Some questions
  • Is anybody actually interested in collaboration?
  • Other forms of collaboration?
  • Alternatives to Wiki?
  • Alternatives to online package base?
  • Which exchange formats are used in GP today?
  • Prime candidates for reuse?

www.program-transformation.org/gp/
15
Generative Programming Wiki
www.program-transformation.org/gp/
16
(No Transcript)
17
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com