MODULE Side-Effect Actions

Side-effect Actions are allowed in the MODULE only by using the WHEN function, as in this example:

//An Example with a side-effect action 
EXPORT customerNames := MODULE 
  EXPORT Layout := RECORD 
    STRING20 surname;  
    STRING10 forename; 
    INTEGER2 age := 25; 
  END; 
  Act := OUTPUT('customer file used by user <x>'); 
  EXPORT File := WHEN(DATASET([{'x','y',22}],Layout),Act); 
END; 
BOOLEAN doIt := TRUE : STORED('doIt'); 
IF (doIt, OUTPUT(customerNames.File));
//This code produces two results: the dataset, and the string