diff options
Diffstat (limited to 'app/speedtest/1986/src/text operation')
| -rw-r--r-- | app/speedtest/1986/src/text operation | 1401 | 
1 files changed, 1401 insertions, 0 deletions
diff --git a/app/speedtest/1986/src/text operation b/app/speedtest/1986/src/text operation new file mode 100644 index 0000000..30ad2ba --- /dev/null +++ b/app/speedtest/1986/src/text operation @@ -0,0 +1,1401 @@ +PACKET text operation DEFINES text assign 1, 
 +                              text assign 10, 
 +                              text assign 30, 
 +                              row text,
 +                              text mult,
 +                              cat,
 +                              text equal 1,
 +                              text equal 10,
 +                              text equal 30,
 +                              text lequal 1,
 +                              text lequal 10,
 +                              text lequal 30,
 +                              text add 1,
 +                              text add 10,
 +                              text add 30, 
 +                              text length 1,
 +                              text length 10,
 +                              text length 30,
 +                              text sub 1,
 +                              text sub 10,
 +                              text sub 30,
 +                              subtext 1,
 +                              subtext 10,
 +                              subtext 30, 
 +                              replace 1,
 +                              replace 10,
 +                              replace 30,
 +                              text 1,
 +                              text 10,
 +                              text 30,
 +                              pos 1,
 +                              pos 10,
 +                              pos 30 :
 +
 +
 +(***************************************************************************)
 +(*                                                                         *)
 +(*  Autor: A. Steinmann                        Copyright (C): HRZ - Unibi  *)
 +(*                                                                         *)
 +(***************************************************************************)
 +
 +
 +ROW 10 TEXT VAR text row ;
 +
 +INT VAR index,
 +        i, 
 +        j ;
 + 
 +REAL VAR begin,
 +         end, 
 +         act result,
 +         text assign factor ;
 +
 +TEXT VAR single text :: "*",
 +         short text :: "ELAN/EUMEL",
 +         long text :: "Ein Multi User Betriebssystem!", 
 +         free text ;
 +
 +
 +
 +
 +PROC text assign 1 (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := single text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text assign 1 s (frequency)
 +
 +END PROC text assign 1 ;
 +
 +
 +
 + 
 +PROC text assign 1 s (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := single text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  text assign factor := act result * msec factor (frequency) - for corr ;
 +
 +  notice result ("TEXT := (1)", text assign factor) 
 +
 +END PROC text assign 1 s ;
 +
 +
 +
 +
 +PROC text assign 10 (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := short text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text assign 10 s (frequency)
 +
 +END PROC text assign 10 ;
 +
 +
 +
 + 
 +PROC text assign 10 s (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := short text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT := (10)", act result * msec factor (frequency) - for corr) 
 +
 +END PROC text assign 10 s ;
 +
 +
 +
 +
 +PROC text assign 30 (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := long text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text assign 30 s (frequency)
 +
 +END PROC text assign 30 ;
 +
 +
 +
 + 
 +PROC text assign 30 s (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := long text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT := (30)", act result * msec factor (frequency) - for corr) 
 +
 +END PROC text assign 30 s ;
 +
 +
 +
 +
 +PROC row text (INT CONST frequency) :
 +
 +  i := 7 ;
 +  text row [i] := "" ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          text row [i] := single text 
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  row text s (frequency)
 +
 +END PROC row text ;
 +
 +
 +
 + 
 +PROC row text s (INT CONST frequency) :
 +
 +  i := 7 ;
 +  text row [i] := "" ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          text row [i] := single text 
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("ROW TEXT [i]", act result * msec factor (frequency) - for corr)
 +
 +END PROC row text s ;
 +
 +
 +
 +
 +PROC text equal 1 (INT CONST frequency) : 
 + 
 +  free text := single text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text = single text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text equal 1 s (frequency)
 +
 +END PROC text equal 1 ;
 +
 +
 +
 + 
 +PROC text equal 1 s (INT CONST frequency) : 
 + 
 +  free text := single text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text = single text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT = (1)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text equal 1 s ;
 +
 +
 +
 +
 +PROC text equal 10 (INT CONST frequency) : 
 + 
 +  free text := short text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text = short text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text equal 10 s (frequency)
 +
 +END PROC text equal 10 ;
 +
 +
 +
 + 
 +PROC text equal 10 s (INT CONST frequency) : 
 + 
 +  free text := short text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text = short text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT = (10)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text equal 10 s ;
 +
 +
 +
 +
 +PROC text equal 30 (INT CONST frequency) : 
 + 
 +  free text := long text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text = long text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text equal 30 s (frequency)
 +
 +END PROC text equal 30 ;
 +
 +
 +
 + 
 +PROC text equal 30 s (INT CONST frequency) : 
 + 
 +  free text := long text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text = long text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT = (30)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text equal 30 s ;
 +
 +
 +
 +
 +PROC text lequal 1 (INT CONST frequency) : 
 + 
 +  free text := single text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text <= single text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text lequal 1 s (frequency)
 +
 +END PROC text lequal 1 ;
 +
 +
 +
 + 
 +PROC text lequal 1 s (INT CONST frequency) : 
 + 
 +  free text := single text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text <= single text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT <= (1)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text lequal 1 s ;
 +
 +
 +
 +
 +PROC text lequal 10 (INT CONST frequency) : 
 + 
 +  free text := short text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text <= short text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text lequal 10 s (frequency)
 +
 +END PROC text lequal 10 ;
 +
 +
 +
 + 
 +PROC text lequal 10 s (INT CONST frequency) : 
 + 
 +  free text := short text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text <= short text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT <= (10)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text lequal 10 s ;
 +
 +
 +
 +
 +PROC text lequal 30 (INT CONST frequency) : 
 + 
 +  free text := long text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text <= long text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text lequal 30 s (frequency)
 +
 +END PROC text lequal 30 ;
 +
 +
 +
 + 
 +PROC text lequal 30 s (INT CONST frequency) : 
 + 
 +  free text := long text ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          IF free text <= long text
 +             THEN
 +          FI
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT <= (30)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text lequal 30 s ;
 +
 +
 +
 +
 +PROC text mult (INT CONST frequency) :
 + 
 +  i := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := i * single text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  text mult s (frequency)
 +
 +END PROC text mult ;
 +
 +
 +
 + 
 +PROC text mult s (INT CONST frequency) :
 + 
 +  i := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := i * single text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT * (Faktor 1)", act result * msec factor (frequency) - for corr)
 + 
 +END PROC text mult s ;
 +
 +
 +
 +
 +PROC cat (INT CONST frequency) :
 +
 +  free text := "" ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text CAT single text ;
 +          free text := ""
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  cat s (frequency)
 +
 +END PROC cat ;
 +
 +
 +
 + 
 +PROC cat s (INT CONST frequency) :
 +
 +  free text := "" ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text CAT single text ;
 +          free text := ""
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("CAT (1)", act result * msec factor (frequency) - for corr)
 + 
 +END PROC cat s ;
 +
 +
 +
 +
 +PROC text add 1 (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := single text + single text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text add 1 s (frequency)
 +
 +END PROC text add 1 ;
 +
 +
 +
 +
 +PROC text add 1 s (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := single text + single text
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT + (1)", act result * msec factor (frequency) - for corr) 
 +
 +END PROC text add 1 s ;
 +
 +
 +
 +PROC text add 10 (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := short text + short text 
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text add 10 s (frequency)
 +
 +END PROC text add 10 ;
 +
 +
 +
 + 
 +PROC text add 10 s (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := short text + short text 
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT + (10)", act result * msec factor (frequency) - for corr) 
 +
 +END PROC text add 10 s ;
 +
 +
 +
 +
 +PROC text add 30 (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := long text + long text 
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text add 30 s (frequency)
 +
 +END PROC text add 30 ;
 +
 +
 +
 + 
 +PROC text add 30 s (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := long text + long text 
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("TEXT + (30)", act result * msec factor (frequency) - for corr) 
 +
 +END PROC text add 30 s ;
 +
 +
 +
 +
 +PROC text length 1 (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          i := length (single text)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text length 1 s (frequency)
 +
 +END PROC text length 1 ;
 +
 +
 +
 + 
 +PROC text length 1 s (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          i := length (single text)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("length (1)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text length 1 s ;
 +
 +
 +
 +
 +PROC text length 10 (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          i := length (short text)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text length 10 s (frequency)
 +
 +END PROC text length 10 ;
 +
 +
 +
 + 
 +PROC text length 10 s (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          i := length (short text)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("length (10)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text length 10 s ;
 +
 +
 +
 +
 +PROC text length 30 (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          i := length (long text)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text length 30 s (frequency)
 +
 +END PROC text length 30 ;
 +
 +
 +
 + 
 +PROC text length 30 s (INT CONST frequency) :
 +
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          i := length (long text)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("length (30)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text length 30 s ;
 +
 +
 +
 +
 +PROC text sub 1 (INT CONST frequency) :
 +
 +  i := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := single text SUB i
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text sub 1 s (frequency)
 +
 +END PROC text sub 1 ;
 +
 +
 +
 + 
 +PROC text sub 1 s (INT CONST frequency) :
 +
 +  i := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := single text SUB i
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("SUB (1)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text sub 1 s ;
 +
 +
 +
 +
 +PROC text sub 10 (INT CONST frequency) :
 +
 +  i := 7 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := short text SUB i
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text sub 10 s (frequency)
 +
 +END PROC text sub 10 ;
 +
 +
 +
 + 
 +PROC text sub 10 s (INT CONST frequency) :
 +
 +  i := 7 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := short text SUB i
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("SUB (10)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text sub 10 s ;
 +
 +
 +
 +
 +PROC text sub 30 (INT CONST frequency) :
 +
 +  i := 17 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := long text SUB i
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 +
 +  text sub 30 s (frequency)
 +
 +END PROC text sub 30 ;
 +
 +
 +
 + 
 +PROC text sub 30 s (INT CONST frequency) :
 +
 +  i := 17 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := long text SUB i
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("SUB (30)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text sub 30 s ;
 +
 +
 +
 +
 +PROC subtext 1 (INT CONST frequency) :
 +
 +  i := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := subtext (single text , i, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  subtext 1 s (frequency)
 +
 +END PROC subtext 1 ;
 +
 +
 +
 + 
 +PROC subtext 1 s (INT CONST frequency) :
 +
 +  i := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := subtext (single text , i, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("subtext (TEXT, INT, INT) (1)", act result * msec factor (frequency) - for corr)
 +
 +END PROC subtext 1 s ;
 +
 +
 +
 +
 +PROC subtext 10 (INT CONST frequency) :
 +
 +  i := 7 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := subtext (short text , i, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  subtext 10 s (frequency)
 +
 +END PROC subtext 10 ;
 +
 +
 +
 + 
 +PROC subtext 10 s (INT CONST frequency) :
 +
 +  i := 7 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := subtext (short text , i, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("subtext (TEXT, INT, INT) (10)", act result * msec factor (frequency) - for corr)
 +
 +END PROC subtext 10 s ;
 +
 +
 +
 +
 +PROC subtext 30 (INT CONST frequency) :
 +
 +  i := 17 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := subtext (long text , i, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  subtext 30 s (frequency)
 +
 +END PROC subtext 30 ;
 +
 +
 +
 + 
 +PROC subtext 30 s (INT CONST frequency) :
 +
 +  i := 17 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency 
 +      REP
 +          free text := subtext (long text , i, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("subtext (TEXT, INT, INT) (30)", act result * msec factor (frequency) - for corr)
 +
 +END PROC subtext 30 s ;
 +
 +
 +
 +
 +PROC replace 1 (INT CONST frequency) : 
 + 
 +  i := 1 ; 
 +  begin := clock (0) ; 
 +  FOR index FROM 1 UPTO frequency 
 +      REP 
 +          replace (single text, i, single text) 
 +      END REP ; 
 +  end := clock (0) ; 
 + 
 +  act result := end - begin ;
 +
 +  replace 1 s (frequency)
 +
 +END PROC replace 1 ;
 +
 +
 +
 + 
 +PROC replace 1 s (INT CONST frequency) : 
 + 
 +  i := 1 ; 
 +  begin := clock (0) ; 
 +  FOR index FROM 1 UPTO frequency 
 +      REP 
 +          replace (single text, i, single text) 
 +      END REP ; 
 +  end := clock (0) ; 
 + 
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("replace (TEXT, TEXT, INT) (1)", act result * msec factor (frequency) - for corr)
 +
 +END PROC replace 1 s ;
 +
 +
 +
 +
 +PROC replace 10 (INT CONST frequency) : 
 + 
 +  i := 7 ; 
 +  begin := clock (0) ; 
 +  FOR index FROM 1 UPTO frequency 
 +      REP 
 +          replace (short text, i, single text) 
 +      END REP ; 
 +  end := clock (0) ; 
 + 
 +  act result := end - begin ;
 +
 +  replace 10 s (frequency)
 +
 +END PROC replace 10 ;
 +
 +
 +
 + 
 +PROC replace 10 s (INT CONST frequency) : 
 + 
 +  i := 7 ; 
 +  begin := clock (0) ; 
 +  FOR index FROM 1 UPTO frequency 
 +      REP 
 +          replace (short text, i, single text) 
 +      END REP ; 
 +  end := clock (0) ; 
 + 
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("replace (TEXT, TEXT, INT) (10)", act result * msec factor (frequency) - for corr)
 +
 +END PROC replace 10 s ;
 +
 +
 +
 +
 +PROC replace 30 (INT CONST frequency) : 
 + 
 +  i := 17 ; 
 +  begin := clock (0) ; 
 +  FOR index FROM 1 UPTO frequency 
 +      REP 
 +          replace (long text, i, single text) 
 +      END REP ; 
 +  end := clock (0) ; 
 + 
 +  act result := end - begin ;
 +
 +  replace 30 s (frequency) 
 +
 +END PROC replace 30 ;
 +
 +
 +
 + 
 +PROC replace 30 s (INT CONST frequency) : 
 + 
 +  i := 17 ; 
 +  begin := clock (0) ; 
 +  FOR index FROM 1 UPTO frequency 
 +      REP 
 +          replace (long text, i, single text) 
 +      END REP ; 
 +  end := clock (0) ; 
 + 
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("replace (TEXT, TEXT, INT) (30)", act result * msec factor (frequency) - for corr)
 +
 +END PROC replace 30 s ;
 +
 +
 +
 +
 +PROC text 1 (INT CONST frequency) :
 +
 +  i := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := text (single text, i, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  text 1 s (frequency)
 +
 +END PROC text 1 ;
 +
 +
 + 
 + 
 +PROC text 1 s (INT CONST frequency) :
 +
 +  i := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := text (single text, i, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("text (TEXT, INT, INT) (1)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text 1 s ;
 +
 +
 +
 +
 +PROC text 10 (INT CONST frequency) :
 +
 +  i := 7 ;
 +  j := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := text (short text, j, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  text 10 s (frequency)
 +
 +END PROC text 10 ;
 +
 +
 +
 + 
 +PROC text 10 s (INT CONST frequency) :
 +
 +  i := 7 ;
 +  j := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := text (short text, j, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("text (TEXT, INT, INT) (10)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text 10 s ;
 +
 +
 +
 +
 +PROC text 30 (INT CONST frequency) :
 +
 +  i := 17 ;
 +  j := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := text (long text, j, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  text 30 s (frequency)
 +
 +END PROC text 30 ;
 +
 +
 +
 + 
 +PROC text 30 s (INT CONST frequency) :
 +
 +  i := 17 ;
 +  j := 1 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          free text := text (long text, j, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("text (TEXT, INT, INT) (30)", act result * msec factor (frequency) - for corr)
 +
 +END PROC text 30 s ;
 +
 +
 +
 +
 +PROC pos 1 (INT CONST frequency) :
 +
 +  i := 1 ;
 +  j := 0 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          j := pos (single text, single text, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  pos 1 s (frequency)
 +
 +END PROC pos 1 ;
 +
 +
 +
 + 
 +PROC pos 1 s (INT CONST frequency) :
 +
 +  i := 1 ;
 +  j := 0 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          j := pos (single text, single text, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("pos (TEXT, TEXT, INT) (1)", act result * msec factor (frequency) - for corr)
 +
 +END PROC pos 1 s ;
 +
 +
 +
 +
 +PROC pos 10 (INT CONST frequency) :
 +
 +  i := 1 ;
 +  j := 0 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          j := pos (short text, single text, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  pos 10 s (frequency)
 +
 +END PROC pos 10 ;
 +
 +
 +
 + 
 +PROC pos 10 s (INT CONST frequency) :
 +
 +  i := 1 ;
 +  j := 0 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          j := pos (short text, single text, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("pos (TEXT, TEXT, INT) (10)", act result * msec factor (frequency) - for corr)
 +
 +END PROC pos 10 s ;
 +
 +
 +
 +
 +PROC pos 30 (INT CONST frequency) :
 +
 +  i := 1 ;
 +  j := 0 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          j := pos (long text, single text, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  act result := end - begin ;
 + 
 +  pos 30 s (frequency)
 +
 +END PROC pos 30 ;
 +
 +
 +
 + 
 +PROC pos 30 s (INT CONST frequency) :
 +
 +  i := 1 ;
 +  j := 0 ;
 +  begin := clock (0) ;
 +  FOR index FROM 1 UPTO frequency
 +      REP
 +          j := pos (long text, single text, i)
 +      END REP ;
 +  end := clock (0) ;
 +
 +  IF act result > end - begin
 +     THEN act result := end - begin
 +  FI ;
 +
 +  notice result ("pos (TEXT, TEXT, INT) (30)", act result * msec factor (frequency) - for corr)
 +
 +END PROC pos 30 s ;
 +
 +
 +END PACKET text operation ;
  | 
