picolisp

Unnamed repository; edit this file to name it for gitweb.
git clone https://logand.com/git/picolisp.git/
Log | Files | Refs | README | LICENSE

commit 5f0fe6f52b583852557a4d267942423a2c7fa97f
parent bc5e989f2366b1b0c3dfdc11ad98f0adf5cb419e
Author: Alexander Burger <abu@software-lab.de>
Date:   Wed, 10 Jul 2013 17:04:01 +0200

'read' continued (super parentheses)
Diffstat:
Msrc/io.c | 8++++----
Msrc64/io.l | 8++++----
Msrc64/tags | 382++++++++++++++++++++++++++++++++++++++++---------------------------------------
3 files changed, 201 insertions(+), 197 deletions(-)

diff --git a/src/io.c b/src/io.c @@ -1,4 +1,4 @@ -/* 05jul13abu +/* 10jul13abu * (c) Software Lab. Alexander Burger */ @@ -1213,11 +1213,11 @@ static any read0(bool top) { } if (Chr == '\'') { Env.get(); - return cons(Quote, read0(NO)); + return cons(Quote, read0(top)); } if (Chr == ',') { Env.get(); - x = read0(NO); + x = read0(top); if (val(Uni) != T) { Push(c1, x); if (isCell(y = idx(Uni, data(c1), 1))) @@ -1228,7 +1228,7 @@ static any read0(bool top) { } if (Chr == '`') { Env.get(); - Push(c1, read0(NO)); + Push(c1, read0(top)); x = EVAL(data(c1)); drop(c1); return x; diff --git a/src64/io.l b/src64/io.l @@ -1,4 +1,4 @@ -# 06jul13abu +# 10jul13abu # (c) Software Lab. Alexander Burger # Close file descriptor @@ -2381,7 +2381,7 @@ cmp B (char "'") # Quote? if eq # Yes call (Get_A) # Skip "'" - ld A 0 + ld A (S) call readA_E # Read expression ld C E call consC_E # Cons with 'quote' @@ -2392,7 +2392,7 @@ cmp B (char ",") # Comma? if eq # Yes call (Get_A) # Skip ',' - ld A 0 + ld A (S) call readA_E # Read expression ld X Uni # Maintain '*Uni' index cmp (X) TSym # Disabled? @@ -2414,7 +2414,7 @@ cmp B (char "`") # Backquote? if eq # Yes call (Get_A) # Skip '`' - ld A 0 + ld A (S) call readA_E # Read expression link push E # Save it diff --git a/src64/tags b/src64/tags @@ -48,119 +48,122 @@ CHAR_LETTER63,1516 CHAR_DIGIT64,1537 -sys/x86-64.linux.defs.l,1959 -ENOENT5,59 -EINTR6,108 -EBADF7,155 -EAGAIN8,194 -EACCES9,227 -EPIPE10,268 -ECONNRESET11,303 -O_RDONLY14,365 -O_WRONLY15,382 -O_RDWR16,399 -O_CREAT17,414 -O_EXCL18,431 -O_TRUNC19,448 -O_APPEND20,466 -F_GETFD21,486 -F_SETFD22,502 -FD_CLOEXEC23,518 -BUFSIZ26,546 -PIPE_BUF27,564 -MAXPATHLEN29,585 -RTLD_LAZY32,613 -RTLD_GLOBAL33,631 -FLOCK36,662 -L_TYPE37,702 -L_WHENCE38,722 -L_START39,744 -L_LEN40,760 -L_PID41,775 -SEEK_SET42,790 -SEEK_CUR43,807 -F_RDLCK44,824 -F_WRLCK45,840 -F_UNLCK46,856 -F_GETFL47,872 -F_SETFL48,888 -F_GETLK49,904 -F_SETLK50,920 -F_SETLKW51,936 -F_SETOWN52,953 -O_NONBLOCK53,970 -O_ASYNC54,992 -STAT57,1019 -ST_MODE58,1061 -ST_SIZE59,1083 -ST_MTIME60,1100 -S_IFMT61,1118 -S_IFDIR62,1144 -TMS65,1180 -TMS_UTIME66,1214 -TMS_STIME67,1232 -TERMIOS70,1261 -C_IFLAG71,1304 -C_LFLAG72,1320 -C_CC73,1337 -ISIG74,1351 -VMIN75,1364 -VTIME76,1377 -TCSADRAIN77,1391 -SIGACTION80,1419 -SIGSET_T81,1462 -SA_HANDLER82,1481 -SA_MASK83,1500 -SA_FLAGS84,1516 -SIG_DFL86,1536 -SIG_IGN87,1552 -SIG_UNBLOCK88,1568 -SIGHUP90,1589 -SIGINT91,1615 -SIGUSR192,1630 -SIGUSR293,1647 -SIGPIPE94,1664 -SIGALRM95,1681 -SIGTERM96,1698 -SIGCHLD97,1715 -SIGCONT98,1732 -SIGSTOP99,1749 -SIGTSTP100,1766 -SIGTTIN101,1783 -SIGTTOU102,1800 -SIGIO103,1817 -SIGNALS104,1832 -WNOHANG107,1894 -WUNTRACED108,1910 -FD_SET111,1938 -TM_SEC114,1975 -TM_MIN115,1990 -TM_HOUR116,2005 -TM_MDAY117,2021 -TM_MON118,2038 -TM_YEAR119,2054 -D_NAME122,2078 -SOCK_STREAM125,2105 -SOCK_DGRAM126,2125 -AF_UNSPEC127,2144 -AF_INET6128,2162 -SOL_SOCKET129,2180 -SO_REUSEADDR130,2199 -IPPROTO_IPV6131,2220 -IPV6_V6ONLY132,2242 -INET6_ADDRSTRLEN133,2263 -NI_MAXHOST135,2290 -NI_NAMEREQD136,2312 -SOCKADDR_IN6138,2333 -SIN6_FAMILY139,2355 -SIN6_PORT140,2375 -SIN6_ADDR141,2393 -ADDRINFO143,2412 -AI_FAMILY144,2430 -AI_SOCKTYPE145,2448 -AI_ADDRLEN146,2468 -AI_ADDR147,2488 -AI_NEXT148,2505 +sys/x86-64.freeBsd.defs.l,1994 +ENOENT5,56 +EINTR6,71 +EBADF7,85 +EAGAIN8,99 +EACCES9,115 +EPIPE10,131 +ECONNRESET11,146 +O_RDONLY14,180 +O_WRONLY15,197 +O_RDWR16,214 +O_CREAT17,229 +O_EXCL18,247 +O_TRUNC19,265 +O_APPEND20,284 +F_GETFD21,301 +F_SETFD22,317 +FD_CLOEXEC23,333 +BUFSIZ26,361 +PIPE_BUF27,379 +MAXPATHLEN28,398 +stdin29,417 +stdout30,442 +stderr31,468 +RTLD_LAZY35,504 +RTLD_GLOBAL36,522 +FLOCK39,553 +L_TYPE40,568 +L_WHENCE41,584 +L_START42,602 +L_LEN43,618 +L_PID44,632 +SEEK_SET45,647 +SEEK_CUR46,664 +F_RDLCK47,681 +F_WRLCK48,697 +F_UNLCK49,713 +F_GETFL50,729 +F_SETFL51,745 +F_GETLK52,761 +F_SETLK53,778 +F_SETLKW54,795 +F_SETOWN55,813 +O_NONBLOCK56,830 +O_ASYNC57,849 +STAT60,874 +ST_MODE61,889 +ST_SIZE62,905 +ST_MTIME63,922 +S_IFMT64,940 +S_IFDIR65,959 +TMS68,988 +TMS_UTIME69,1001 +TMS_STIME70,1019 +TERMIOS73,1048 +C_IFLAG74,1065 +C_LFLAG75,1081 +C_CC76,1098 +ISIG77,1112 +VMIN78,1127 +VTIME79,1141 +TCSADRAIN80,1156 +SIGACTION83,1184 +SIGSET_T84,1203 +SA_HANDLER85,1221 +SA_MASK86,1240 +SA_FLAGS87,1257 +SIG_DFL88,1274 +SIG_IGN89,1290 +SIG_UNBLOCK90,1306 +SIGHUP91,1326 +SIGINT92,1341 +SIGUSR193,1356 +SIGUSR294,1373 +SIGPIPE95,1390 +SIGALRM96,1407 +SIGTERM97,1424 +SIGCHLD98,1441 +SIGCONT99,1458 +SIGSTOP100,1475 +SIGTSTP101,1492 +SIGTTIN102,1509 +SIGTTOU103,1526 +SIGIO104,1543 +SIGNALS105,1558 +WNOHANG108,1583 +WUNTRACED109,1599 +FD_SET112,1627 +TM_SEC115,1652 +TM_MIN116,1667 +TM_HOUR117,1682 +TM_MDAY118,1698 +TM_MON119,1715 +TM_YEAR120,1731 +D_NAME123,1755 +SOCK_STREAM126,1781 +SOCK_DGRAM127,1801 +AF_UNSPEC128,1820 +AF_INET6129,1838 +SOL_SOCKET130,1856 +SO_REUSEADDR131,1879 +IPPROTO_IPV6132,1900 +IPV6_V6ONLY133,1922 +INET6_ADDRSTRLEN134,1943 +NI_MAXHOST135,1969 +NI_NAMEREQD136,1991 +SOCKADDR_IN6137,2011 +SIN6_FAMILY138,2033 +SIN6_PORT139,2053 +SIN6_ADDR140,2071 +ADDRINFO141,2089 +AI_FAMILY142,2107 +AI_SOCKTYPE143,2125 +AI_ADDRLEN144,2145 +AI_ADDR145,2165 +AI_NEXT146,2182 ./glob.l,4331 Data4,51 @@ -410,7 +413,7 @@ sys/x86-64.linux.defs.l,1959 UndefErr1247,85443 DlErr1248,85472 -./main.l,2242 +./main.l,2261 Code4,51 Ret8,106 Retc10,127 @@ -509,6 +512,7 @@ sys/x86-64.linux.defs.l,1959 putStringB2538,62459 begString2550,62673 endString_E2561,62899 +msec_A2576,63247 doArgs2590,63556 doNext2597,63670 doArg2614,63986 @@ -656,75 +660,75 @@ sys/x86-64.linux.defs.l,1959 rdList_E2195,56969 readC_E2329,60397 readA_E2341,60634 -tokenCE_E2524,64931 -doRead2670,68468 -inReadyC_F2708,69308 -fdSetCL_X2720,69589 -fdRdSetCZL2732,69823 -fdWrSetCZL2739,69965 -rdSetCL_F2746,70114 -wrSetCL_F2751,70230 -rdSetRdyCL_F2756,70353 -waitFdCEX_A2778,70814 -doWait3180,84240 -doSync3218,84963 -doHear3258,85903 -doTell3290,86597 -fdSetC_Y3339,87685 -doPoll3350,87919 -doKey3406,89290 -doPeek3461,90729 -doChar3477,91007 -doSkip3531,91952 -doEol3545,92299 -doEof3554,92465 -doFrom3573,92822 -doTill3640,94491 -eolA_F3714,96440 -doLine3729,96744 -doLines3882,100784 -parseBCE_E3923,101685 -doAny3995,103340 -doSym4035,104278 -doStr4049,104537 -loadBEX_E4102,105663 -doLoad4212,108386 -doIn4235,108798 -doOut4255,109128 -doErr4275,109462 -doCtl4295,109797 -doPipe4316,110152 -doOpen4379,111698 -doClose4422,112678 -doEcho4453,113269 -putStdoutB4666,118793 -newline4709,119775 -space4713,119817 -outNumE4718,119881 -outWordA4725,120009 -prExtNmX4737,120247 -outOctA4745,120441 -outAoA4758,120709 -outStringS4770,120957 -outStringC4772,121027 -outNameE4782,121166 -prNameX4790,121283 -printE_E4800,121438 -printE4809,121574 -prinE_E5022,127190 -prinE5031,127326 -doPrin5086,128588 -doPrinl5100,128858 -doSpace5104,128926 -doPrint5126,129325 -doPrintsp5142,129620 -doPrintln5157,129909 -doFlush5162,129997 -doRewind5170,130134 -doExt5187,130524 -doRd5204,130863 -doPr5270,132643 -doWr5287,132975 +tokenCE_E2524,64937 +doRead2670,68474 +inReadyC_F2708,69314 +fdSetCL_X2720,69595 +fdRdSetCZL2732,69829 +fdWrSetCZL2739,69971 +rdSetCL_F2746,70120 +wrSetCL_F2751,70236 +rdSetRdyCL_F2756,70359 +waitFdCEX_A2778,70820 +doWait3180,84246 +doSync3218,84969 +doHear3258,85909 +doTell3290,86603 +fdSetC_Y3339,87691 +doPoll3350,87925 +doKey3406,89296 +doPeek3461,90735 +doChar3477,91013 +doSkip3531,91958 +doEol3545,92305 +doEof3554,92471 +doFrom3573,92828 +doTill3640,94497 +eolA_F3714,96446 +doLine3729,96750 +doLines3882,100790 +parseBCE_E3923,101691 +doAny3995,103346 +doSym4035,104284 +doStr4049,104543 +loadBEX_E4102,105669 +doLoad4212,108392 +doIn4235,108804 +doOut4255,109134 +doErr4275,109468 +doCtl4295,109803 +doPipe4316,110158 +doOpen4379,111704 +doClose4422,112684 +doEcho4453,113275 +putStdoutB4666,118799 +newline4709,119781 +space4713,119823 +outNumE4718,119887 +outWordA4725,120015 +prExtNmX4737,120253 +outOctA4745,120447 +outAoA4758,120715 +outStringS4770,120963 +outStringC4772,121033 +outNameE4782,121172 +prNameX4790,121289 +printE_E4800,121444 +printE4809,121580 +prinE_E5022,127196 +prinE5031,127332 +doPrin5086,128594 +doPrinl5100,128864 +doSpace5104,128932 +doPrint5126,129331 +doPrintsp5142,129626 +doPrintln5157,129915 +doFlush5162,130003 +doRewind5170,130140 +doExt5187,130530 +doRd5204,130869 +doPr5270,132649 +doWr5287,132981 ./apply.l,445 applyXYZ_E4,51 @@ -1255,9 +1259,9 @@ sys/x86-64.linux.defs.l,1959 getUdpZ_FB373,9872 putUdpBZ380,10017 -sys/x86-64.linux.code.l,94 -errno_A5,67 -errnoC10,169 -wifstoppedS_F16,287 -wifsignaledS_F21,413 -wtermsigS_A28,568 +sys/x86-64.freeBsd.code.l,94 +errno_A5,64 +errnoC10,158 +wifstoppedS_F21,537 +wifsignaledS_F27,688 +wtermsigS_A36,897