Ugrás a tartalomhoz

Unlambda

Ellenőrzött
A Wikipédiából, a szabad enciklopédiából

Az Unlambda egy David Madore által kifejlesztett funkcionális programozási nyelv, amely a lambda-kalkuluson alapul, ugyanakkor nem tartalmazza a lambda operátort, ehelyett kombinátorokat használ. Az ezoterikus programozási nyelvek közé sorolható, mivel a lambda-kalkulus és a kombinátorok használata nem elterjedt a hétköznapi életben.

A nyelv alapját hét primitív függvény és az alkalmazás/applikáció művelete alkotja. Az alkalmazás operátor jele `, a függvények a következők: s, k, i, v, d, c és .x, ahol az x helyén tetszőleges betű állhat (ez egy függvénynek számít) és az r függvény (egy .x szinonima, az x helyén az újsor karakter áll). Az unlambda nyelv 2. változatában ezen kívül 4 újabb primitív függvény található ( e, @, ?x, | ). A nyelv tartalmaz még be- és kimeneti funkciókat is, így teljes értékű és használható programnyelv.

Ez a nyelv állítólag Turing-teljes (Turing-ekvivalens) – amennyiben a lambda-kalkulus is az (ui. eddig nem sikerült formálisan bizonyítani a Turing-gép és a lambda-kalkulus ekvivalenciáját, azaz hogy a Turing-gépen megvalósítható algoritmusok minden esetben megvalósíthatóak tisztán lambda-kalkulusban is).

Az ezoterikus programnyelvek közé sorolják.

Hello World program megvalósítása unlambda nyelven:

`r```````````.H.e.l.l.o. .w.o.r.l.di


Kapcsolódó szócikkek

[szerkesztés]

További információk

[szerkesztés]