Az Oz/Mozart programozási nyelv

Sablonok

Sablonok

Az Oz nyelvben csak osztály sablonok vannak.
Erről a témakörről nem találtam mást, csak egyetlen példát (ez egy sablon osztály):

fun {SortClass Type} class $ from BaseObject meth qsort(Xs Ys) case Xs of nil then Ys = nil [] P|Xr then S L in {self partition(Xr P S L)} ListC, append({self qsort(S $)} P|{self qsort(L $)} Ys) end end meth partition(Xs P Ss Ls) case Xs of nil then Ss = nil Ls = nil [] X|Xr then Sr Lr in case Type,less(X P $) then Ss = X|Sr Lr = Ls else Ss = Sr Ls = X|Lr end {self partition(Xr P Sr Lr)} end end end end