Lambda

Allikas: Lambda

Lambda on kreeka tähestiku täht, mis vastab ladina l-tähele. Selle kogumiku nimeks sai lambda seetõttu, et 1930 aastatel lõi A.Church ühe esimestest programmeerimiskeeltest maailmas (teine oli Churchi õpilase A.Turingu nn "Turingi masin") ning nimetas selle keele lambda-arvutuseks (praktiliseks katsetamiseks külasta seda saiti).

Lambda-arvutus oli küll puhtalt teooria jaoks mõeldud keel, aga oma äärmise lihtsuse ja üldisuse tõttu muutus ta hiljemloodud praktiliste programmeerimiskeelte üheks peamiseks ideeliseks aluseks. Keel ei sisalda tegelikult midagi muud, kui lihtsakoelist asenduste tegemise mehhanismi. Avaldis ((λ x. t) g) arvutatakse välja nii, et asendatakse sisemises avaldises t kõik muutujad x (lambda-sümbol x ees tähistabki, et x on asendamisele kuuluv muutuja) avaldisega g. Seega on (λ x. t) siinkohas funktsioon ning g on tema argument. NB! Kui taolise asendamise tulemuses saab veel asendusi teha, siis tuleb asendamist jätkata, kuni neid enam kuskil teha ei saa (öeldakse, et avaldis on siis normaalkujul).

Näiteks: avaldis ((λ x. f x) a) annab arvutamise (st. asendamise) tulemuseks (f a), avaldis ((λ x. x x) a) annab tulemuseks (a a), avaldis ((λ x. x x) ((λ x. x x) b)) annab mitme järjestikuse asendamise tulemusena avaldise ((b b)(b b)), avaldise ((λ x. x x) (λ x. x x)) arvutamine läheb lõputusse tsüklisse, sest asendamine midagi ei muuda, avaldise väärtus on ta ise.

Oranzh lambda-sümbol on veel sisemine osa Half-Life Black Mesa kompleksi lambda sektori logost.