piątek, 6 lipca 2007

unlambda

Język programowania, który nie posiada pętli, instrukcji warunkowej, zmiennych, nie posiada właściwie nic, tylko jednoargumentowe funkcje. Funkcja przyjmuje jeden argument, jednoargumentową funkcję i zwraca także jednoargumentową funkcję. To nie LISP, to UNLAMBDA. Funkcja stała - zwraca zawsze to samo. Funkcja "przeźroczysta", albo identycznościowa - zwraca zawsze swój argument. I konstruktor - funkcja, która pozwala tworzyć kolejne .... To wystarcza, aby pisać kompletne w sensie maszyny Turinga programy. A tak wygląda program w tym języku:
```s``s``sii`ki
  `k.*``s``s`ks
 ``s`k`s`ks``s``s`ks``s`k`s`kr``s`k`sikk
  `k``s`ksk
Czytać się tego nie da ....

1 komentarz:

Bartosz Leper pisze...

OMG. Kolejny Brainfuck! ;-)