Beispiele für EDT-Prozeduren
1. Beispiel für bedingte und unbedingte Sprünge in einer INPUT-Prozedur
Die Prozedur durchsucht jede Zeile eines Arbeitsbereichs nach einem, zwei oder drei Suchbegriffen. Die Zeilen, die alle Suchbegriffe enthalten, werden am Bildschirm angezeigt und in die Datei find.dat geschrieben.
Inhalt der INPUT-Prozedur proc1:

@params &search1,&search2,&search3 ;; Parameter definieren
@proc 1 ;;
Wechseln in Arbeitsbereich 1
@@on ! find '&search1' ;;
in aktueller Zeile nach 1-tem Such-
@@rem                                 begriff suchen
@@if .f. goto notfind              ;; Goto notfind, wenn nicht gefunden
@@if '&search2' = '' goto end ;;
Goto end, wenn 2. Suchbegriff fehlt
@@on ! find '&search2' ;;
in aktueller Zeile nach 2. Suchbe-
@@rem                                 griff suchen
@@if .f. goto notfind ;;
Goto notfind, wenn nicht gefunden
@@if '&search3' = '' goto end ;;
Goto end, wenn 3. Suchbegriff fehlt
@@on ! find '&search3' ;;
in aktueller Zeile nach 3-tem Such-
@@rem                              ;; begriff suchen
@@if .f. goto notfind ;;
Goto notfind, wenn nicht gefunden
@@goto end ;;
Springen zu end
@@:notfind ;;
Definieren Sprungmarke notfind
@@delete ! ;;
Aktuelle Zeile löschen
@@:end ;;
Definieren Sprungmarke end
@end ;;
Wechseln in Arbeitsbereich 0
@do1 !=%,$,1 ;;
Prozedur 1 aufrufen, erste Zeile %,
@rem                              ;; letzte Zeile $, Schrittweite 1,
@rem                               ;; Schleifensymbol !
@print ;;
alle Zeilen anzeigen
@w'find.dat'o ;;
Arbeitsbereich in Datei find.dat
@rem                               ;; schreiben
Aufruf der INPUT-Prozedur proc1:
 edt testdat -iproc1 Meier Hans 10.12.65
Von der Datei testdat werden alle Sätze angezeigt und in die Datei find.dat geschrieben, die in einer beliebigen Spalte jeweils den Nachnamen "Meier", den Vornamen "Hans" und das Geburtsdatum "10.12.65" enthalten. Beim Laden des EDT wird als erster Parameter der Name der zu bearbeitenden Datei und als zweiter Parameter mit dem Schalter "-i" der Name der INPUT-Prozedur angegeben. Nach der INPUT-Prozedur folgen die Parameter für die INPUT-Prozedur.
2. Beispiel für eine äußere Schleife
Mit äußeren Schleifen können Prozeduren mehrmals vollständig durchlaufen werden. Sollen jedoch nur Teile einer Prozedur mehrmals durchlaufen werden, müssen diese Teile in Form von inneren Schleifen formuliert werden.

@proc 1                      ;; Wechseln in Arbeitsbereich 1
@@column 10 on ! insert !:27-36: ;; in aktuelle Zeile Spalten einfügen
@end                             ;; in Arbeitsbereich 0 wechseln
@do 1 !=1,5,1                    ;; Do-Prozedur aufrufen f. die Zeilen 1 - 5
Aufruf der INPUT-Prozedur proc1:
 edt testdat2 -iproc2
In diesem Beispiel werden in den Zeilen 1 - 100 die Spalten 27-36 nach der Spalte 10 eingefügt. Die Prozedur wird für jede Zeile einmal durchlaufen, beginnend mit der Zeile 1. Bei jedem Durchlauf wird das Schleifensymbol "!" um die Schrittweite 1 erhöht. Die Prozedur wird so oft durchlaufen, bis das Schleifensymbol die Nummer der als letzte zu bearbeitende Zeile erreicht hat, in diesem Fall die Zeile 100. Mit dem Schleifensymbol kann die gerade aktuell zu bearbeitende Zeile angesprochen werden.
3. Beispiel für eine innere Schleife
Mit inneren Schleifen können auch Zeilen mit variabler Schrittweite bearbeitet werden. Außerdem muss nicht die gesamte Prozedur durchlaufen werden

@proc 5                     ;; Wechseln in Arbeitsbereich 5
@@params &file,&begin,&end  ;; Parameter definieren
@@rea'&file'                ;; Datei einlesen
@@on & find '&begin'        ;; Suchen Beginn des zu verarbeitenden
@@rem                          Bereichs
@@if .false. goto end       ;; bei Fehler Abbruch
@@set #l1=?                 ;; Speichern Zeilennummer in Line-Variable #L1
@@on & find '&end'          ;; Suchen Ende des zu verarbeitenden Bereichs
@@if .false. goto end       ;; bei Fehler Abbruch
@@set #l2=?                 ;; Speichern Zeilennummer in Line-Variable #L2
@@set #l0=#l1+1l            ;; Setzen #L0 auf 2-te Zeile des Bereichs
@@:begin                    ;; Beginn der Schleife
@@if L #l0 >= #l2 goto copy ;; Abfrage auf Ende des Bereichs
@@set #l3=#l0-1l            ;; Setzen #L0 auf vorhergehende Zeile
@@if #L0:1-5:<>#l3:1-5: goto add  ;;Vergleich des Schlüssels aktuelle Zeile
@@rem                          mit letzter Zeile
@@delete #l3                ;; vorhergehende Zeile mit gleichem Schlüssel
@@rem                          löschen
@@:add                      ;; Sprungziel add
@@set #l0=#l0+1l            ;; Erhöhen #L0 um eine Zeile
@@goto begin                ;; Sprung zu Schleifenbeginn
@@:copy                     ;; Sprungziel copy
@@proc2                     ;; Wechseln in Arbeitsbereich 2
@@copy #l1.-#l2(0) last     ;; Kopieren des verarbeiteten Bereichs in
@@rem                          Arbeitsbereich 2
@@end                       ;; Wechseln in Arbeitsbereich 5
@@delete                    ;; Löschen des Arbeitsbereichs 0
@@:end                      ;; Sprungziel end
@end                        ;; Wechseln in Arbeitsbereich 0, Ende Prozedur
@do 5(file1,start,ende)     ;; Do-Prozedur aufrufen für die Datei file1
@do 5(file2,anfang,schluss) ;; Do-Prozedur aufrufen für die Datei file2
@proc2                      ;; Wechseln in Arbeitsbereich 2
@sort                       ;; Sortieren der Daten in Arbeitsbereich 2
@w'sort.dat'o               ;; Schreiben sortierte Daten in Datei sort.dat mit
@rem                        ;; Option Overwrite
Aufruf der INPUT-Prozedur proc3:
 edt -iproc3
In diesem Beispiel wird der Beginn und Ende eines zu verarbeitenden Bereichs gesucht und in den Line-Variablen #L1 und #L2 gespeichert. Die Schlüssel (Spalte 1 bis 5) jeder Zeile werden mit dem Schlüssel der vorhergehenden Zeile verglichen. Zeilen mit gleichem Schlüssel werden gelöscht. In der Line-Variablen #L0 steht die Nummer der aktuell zu verarbeitenden Zeile. Sie wird um eine relative Zeilennummer erhöht, d.h. die Line-Variable #L0 wird nicht um eine feste Schrittweite erhöht, sondern ihr wird mit dem Kommando SET #L0=#L0+1L die nächste belegte Zeilennummer zugewiesen (z.B. nach Zeile 20 kommt Zeile 50 oder nach Zeile 20 kommt Zeile 20.0001).
Die Prozedur proc5 wird zweimal aufgerufen, jeweils mit verschiedenen DateienDie bearbeiteten Zeilen werden in den Arbeitsbereich 2 kopiert. Die Option LAST bewirkt, dass die Daten an das Ende des Arbeitsbereichs 2 angehängt werden. Nach der Verarbeitung der zwei Dateien wird der Arbeitsbereich 2 sortiert. Die sortierten Daten werden in die Datei sort.dat geschrieben.