Standardowo odwołania do pól rekordów lub pól i metod obiektu realizowane są za pomocą nazw kwalifikowanych tworzonych przy pomocy odpowiednich desygnatorów pól.
Przykład w języku Pascal:
type
tadres = record
ulica : string[50];
miasto : string[30]
end;
tosoba = record
imie : string[20];
nazwisko : string[30];
adres : tadres
end;
var osoba : tosoba;
Odwołania do pól zmiennej osoba mają postać:
osoba.imie:='Jan';
osoba.nazwisko:='Kowalski';
osoba.adres.ulica:='ul. Nowa 10/10';
osoba.adres.miasto:='Wroclaw';
Takie odwołania do pól określonego rekordu w grupie instrukcji zaciemniają czytelność kodu źródłowego i utrudniają jego pisanie. W celu uproszczenia kodu wprowadzono instrukcję wiążącą.
Przykład w języku Pascal:
{ zastosowanie instrukcji wazacej }
with osoba.adres do
begin
ulica:='ul. Nowa 10/10';
miasto:='Wroclaw'
end;
Działanie instrukcji wiążącej polega na powiązaniu niezdefiniowanych identyfikatorów ulica i miasto z rekordem wskazanym w nagłówku instrukcji wiążącej i w efekcie przypisanie polom tego rekordu (niewskazanego jawnie w instrukcji przypisania) odpowiednich wartości. Z powyższego wynika jasno, że choć powyższa konstrukcja nazwana została i zdefiniowana w językach jako "instrukcja", tak naprawdę nie jest instrukcją (nie generuje żadnego dodatkowego kodu wynikowego), lecz jest dyrektywą dla kompilatora, ułatwiającą pisanie kodu źródłowego.