W późniejszych wersjach Basicu wprowadzono definiowanie parametryzowanych podprogramów (SUB).
10 DEF SUM(X,Y)=X+Y 20 GOSUB 50 30 PRINT "WYNIK: ", A 40 END 50 A=SUM(1,2) 60 RETURN
Podprogram w języku C Podprogram w języku C: <typ> funkcja( [ <lista-parametrow-formalnych> ] ) { // instrukcje do wykonania (ciało funkcji) return (/* wyrażenie */);
/* Deklaracja procedury w jęz. C */ void funkcja( [ <lista-parametrow-formalnych> ] ) { // instrukcje do wykonania (ciało funkcji)
Podprogram w języku C# Podprogram w języku C#: class klasa { [public/protected/private/internal] [static/virtual/override] [unsafe] <typ> metoda( parametry ) { //ciało metody return /* wyrażenie */;
//metoda zwracająca 'nic' [void] , bezparametrowa [public/protected/private/internal] [static/virtual/override] [unsafe] void metoda() { //ciało metody
Podprogram w języku Clipper Podprogram w języku Clipper: [STATIC] FUNCTION identyfikator([parametry]) [deklaracje lokalne] instrukcje RETURN wyrażenie
[STATIC] PROCEDURE identyfikator([parametry]) [deklaracje lokalne] instrukcje RETURN
* blok kodu * który traktowany jest także jak typ danej {|[lista_parametrów]|'wyrażenie_1[, wyrażenie_2[, ...