DemeterF

Implementation(s), Documentation and Examples




Description:

DemeterF, together with DemFGen, is an implementation of Functional Adaptive Programming. Similar to DemeterJ, DemFGen makes up the class generation portion of the system, while the DemeterF traversal library supports functional, side-effect free implicitly parallel traversal computation.

We have full implementations in Java and C#, with a functional prototype in Scheme.

-- I've completed the DemeterF introductory document... Here are the PDFs and corresponding source code files.
Last updated Sep. 19th 2008
Intro-Java : shape.java and threetree.java
Intro-C# : shape.cs and threetree.cs

Updates:

-- AOSD-09 Submission Examples

-- A simple HowTo for using DemeterF/DemFGen with Eclipse

-- The DemeterF Source is now browsable:
Java Src
C# Src

-- Here's a more complicated example of a simple Compiler


I've written the same BST test in the three supported DemeterF/AP-F languages.
Java: Text / Html
C#: Text / Html
Scheme: Text / Html

Downloads:

Below are all the files/pages of the various DemeterF versions.
See DemFGen for information on the DemeterF class generator, and CSJavaCC for the JavaCC based C# parser generator.

Java

Here's the Java Source, Library, and Documentation. Everything is compiled with Java 1.5 compatibility (I use JSDK 1.6).
Last updated Oct. 6th 2008.
Java Source
Library (Jar)
Compatability Jar (for CCIS Unix machines)
JavaDoc

Here are some DemeterF Examples.

Our Tech Report, though some of the code is a little out of date, the ideas are still the same.

C#

-- NEW :   DGP functions (Display/ToStr/Print) are now fixed for C# generic classes.

-- DemeterF now has a C# implementation and DemFGen supports C# class generation/parsing.

Here's the related files. More stuff to come... Also check the DemFGen page for more info.
Last updated Oct. 6th 2008.
C# Source
Library (DLL) (Compiled with Mono gmcs)
CSJavaCC (C# parser generator)


Scheme

Here's a few links. Examples are included in the download; more are included on the project page.
Last updated July 11th 2008.
MzScheme Source/Library
apf-lib Project Page