Езотерични езици за програмиране

В категория Програмиране 0 кометара

След като се порових малко, за да намеря информация за програмния език Brainfuck, попаднах на една така цяла група езици, наречени езотерични езици. На български може да се казват по дру начин, но английски са си esoteric programming languages. Те служат само за той е предизвикателство пред програмистите и нямат никакво практическо приложение. Използваемостта рядко е сред приоритетите при създаване на такива езици, даже точно обратното – направени са максимално трудни за използване, просто за да му бъде гадно на този който пише и за да може да се докаже, че колкото и гадно да е писаното той пак е достатъчно умен да се оправи. Тези езотерично езици за програмиране са разделени на групи, като най-интересна за мен е групата Turing tarpit. При нея езиците използват много малък брой команди. В тази група спада Brainfuck, за който ви споменах, както и OISC (1 команда, 3 операнда) и Thue (1 команда, 2 операнда). Може би сте чували за компютърните архитектури – RISC (reduced instruction set computer или компютър с намален брой инстрикции) или CISC (complete instruction set computer или компютър с пълен набор инстрикции), но едва ли сте чували за OISC (One Instruction Set Computer или компютър с една инстрикция). Като го чух за пътви път ми прозвуча много интересно. Ето и как изглежда този език:

    subleq a, b, c   ; Mem[b] = Mem[b] - Mem[a]
                     ; if (Mem[b] ? 0) goto ca, b, c
                     ; Mem[b] = Mem[b] - Mem[a]
                     ; if (Mem[b] < 0) goto

Изглежда сложничко нали. И си е така. Другият език от тази група езотерични езици е Thue. Аз лично много се чудих как се произнася и се оказа че е tu:ei. Ето и един пример:

a::=~Hello World!
::=
a
Публикувано от koleto   @   18 юни 2009 0 коментара
Тагове : , ,

Споделете тази публикация

RSS Digg Twitter StumbleUpon Delicious Technorati

0 Кометара

Няма коментари. Бъдете първият който ще изкаже мнението си!
Коментирайте

Име

Email

Website

Предишна публикация
«
Следваща публикация
»
CrossBlock designed by DeltaManual.Com  |  In conjunction with Web Hosting   |   Web Hosting   |   Reverse phone
This site employs the Wavatars plugin by Shamus Young.