Identyfikacja podprogramu Podprogram może być identyfikowany: przez nazwę – identyfikator przypisany do podprogramu w jego deklaracjijest to najczęściej spotykany przypadek w językach wysokiego poziomujęzyki programowania: Ada, C, C++, COMAL, Clipper, Forth, Icon, Logo, Modula-2, Pascal, Simula 67, PL/1, PL/M, Visual Basic przez etykietęjęzyki programowania: Basic, Visual Basic, przez liczbę – literał całkowityjęzyki programowania: Basic, Visual Basic, Jean, JOSS przez adres/referencjęw językach wysokiego poziomu takie wskaźniki do podprogramów przechowywane są w zmiennych typu proceduralnego/funkcyjnego lub wskaźnikowego
Współprogramy Współprogramy to procedury wykonywane w taki sposób, że sterowanie może zostać przekazywane pomiędzy nimi wielokrotnie, przy czym wywołanie danego współprogramu powoduje wykonywanie instrukcji od miejsca ostatniego przerwania wykonania (ostatniego punktu wyjścia), a nie od początku. Współprogramy często występują parami i stanowią dwa „równorzędne” podprogramy.
Rodziny podprogramów Istnieją języki programowania, w których można definiować całą rodzinę podprogramów z jednakową nazwą dla wywołania różnych podprogramów. Do takich języków należą PL/1 i Ada.