Опознайте язык палимпсеста
Dec. 15th, 2016 08:09 pmЯзык, конечно, не человеческий, поэтому в основном под катом.
В качестве примера:
Я понятия не имею, на что это, вообще, похоже.
А еще у меня есть на этом языке кусок программы, которая играет в 4х4х4 крестики-нолики.
В качестве примера:
FUNCTION DEBFN X;
IF DEBUG THEN BUGIO(X, ">",HD); DEBSP+1->DEBSP; .X;
DEBSP-1->DEBSP; BUGIO(X, "<",LAMBDA; HD(.TL) END)
EXIT;.X
END;Я понятия не имею, на что это, вообще, похоже.
VARS DEBPR DEBSP DEBUG;
FUNCTI BUGIO F;
VARS X;
1.NL; DEBSP.SP;.PR; .FNPROPS-> X;
IF X.NULL THEN L0: X.PR; ";".PR EXIT;
X.HD -> X;
IF X.ATOM THEN GOTO L0 CLOSE;
X.HD.PR; ";".PR; F(X.TL)->X; REV(MAPLIST(X,ERASE));
APPLIST(X,
LAMBDA U;
.DEST->X; 1.SP; U.PR;
IF NOT(U= "*") THEN PR("="); ->U; U.DEBPR; U CLOSE;
",".PR; X
END); ->X
END;
FUNCTION DEBFN X;
IF DEBUG THEN BUGIO(X, ">",HD); DEBSP+1->DEBSP; .X;
DEBSP-1->DEBSP; BUGIO(X, "<",LAMBDA; HD(.TL) END)
EXIT;.X
END;
MACRO BUG;
VARS X;
MACRESULTS([%
(L0:
.ITEMREAD->X;
IF NOT(X= ";") THEN "DEBFN","(%",X,"%)","-> ",X,";";GOTO L0 CLOSE)%])
END;
MACRO UNBUG;
VARS X;
MACRESULTS([%
(L0:
.ITEMREAD->X;
IF NOT(X= ";") THEN 1,",",X,".","FROZVAL","-> ",X,";";GOTO L0 CLOSE)%])
END;
PR->DEBPR; 0->DEBSP; FALSE->DEBUG;
MACRO SPEC;
VARS FN X;
ITEMREAD()->FN;
[% [%
[% FN,
[% (L0: ITEMREAD()->X;
IF NOT(X= " ; " ) AND NOT(X= "=>") THEN X;GOTO L0 CLOSE) %],
IF X= ";" THEN NIL ELSE
[% (L1: ITEMREAD()->X; IF NOT(X= ";") THEN X;GOTO L1 CLOSE) %]
CLOSE %] %],
"->",FN,".","FNPROPS",";" %].MACRES
END;
А еще у меня есть на этом языке кусок программы, которая играет в 4х4х4 крестики-нолики.
no subject
Date: 2016-12-16 05:29 am (UTC)no subject
Date: 2016-12-16 06:23 am (UTC)А я впервые слышу. Спасибо!
no subject
Date: 2016-12-16 11:15 pm (UTC)Дальше пока не работает.