The following download contains the EOS-U compiler, version 0.3.4, downloaded from http://www.cs.iastate.edu/~eos/. In the examples folder we added the ActivityExample code, to illustrate aspect loops in Classpects. Download EOS-U + Activity Example. Note: the code must be run on Windows, using the .Net framework.

The code for the Activity classspect that provokes an aspect loop is:

using System;
using Eos.Runtime;

public class ActivityAspect
{
    
    public object LogActivity(Eos.Runtime.AroundADP adp, Point p)
	{
	      object result = null;
	      Console.WriteLine("Loop");  
	      Console.WriteLine("execution on point " + p.ToString()) ;
	      result = adp.InnerInvoke(); 	      
	      return result;
	}

	
	static object around execution(any any(..)) || initialization(any(..)) 
              && !within(ActivityAspect) && aroundptr(adp) && target(p): 
              call LogActivity(Eos.Runtime.AroundADP adp, Point p);
}