o01eg: Pino (Default)
[personal profile] o01eg
Мой интерпретатор моего варианта лиспа:
http://bin.mypage.sk/FILES/gp-0.0.1.tar.bz2
В качестве примера там имеются две функции, считающие длину списка с обычной и хвостовой рекурсией.
Выглядит этот лисп довольно жестоко, ибо не предназначен для человеческих глаз, кроме того пока имееются довольно скудный список встроеных функций:
#0 - EVAL
#1 - CONS
#2 - CAR
#3 - CDR
#4 - NULL
#5 - +
Есть различия от clisp в поведении функций, (CAR NIL) и (CDR NIL) дают ERROR, а не NIL.
Для передачи имени функции в качестве параметра её надо блокировать от вычислений "( ' #4 )", иначе интерпретатор подумает, что она вычисляется, и испортит стеки.
При записи каждый элемент должен отделяться пробельным символом (ибо делать нормальный парсер было лень).
copy: http://lj.rossia.org/users/o01eg/1066.html
From:
Anonymous( )Anonymous This account has disabled anonymous posting.
OpenID( )OpenID You can comment on this post while signed in with an account from many other sites, once you have confirmed your email address. Sign in using OpenID.
User
Account name:
Password:
If you don't have an account you can create one now.
Subject:
HTML doesn't work in the subject.

Message:

 
Notice: This account is set to log the IP addresses of everyone who comments.
Links will be displayed as unclickable URLs to help prevent spam.

Profile

o01eg: Pino (Default)
o01eg

April 2017

S M T W T F S
      1
2345678
9101112131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 25th, 2017 10:48 am
Powered by Dreamwidth Studios