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 a1a41c9a04a3e679690f26f09b3a8670fda9f6fc
parent e1fc104200ccbe659212f7e7ce684df0a83e9fec
Author: Alexander Burger <abu@software-lab.de>
Date:   Fri,  2 Nov 2012 11:24:27 +0100

Added '*CPU' global variable (64-bit)
Diffstat:
MCHANGES | 1+
Mdoc/ref.html | 1+
Mdoc/refC.html | 11+++++++++++
Mdoc/refO.html | 2+-
Msrc64/glob.l | 6++++--
Msrc64/tags | 346++++++++++++++++++++++++++++++++++++++++---------------------------------------
6 files changed, 192 insertions(+), 175 deletions(-)

diff --git a/CHANGES b/CHANGES @@ -1,4 +1,5 @@ * DDmmm12 picoLisp-3.1.1 + '*CPU' global variable (64-bit) Bug in 'collect' for 'fold'ed keys File descriptor leak in 'dir' (64-bit) Namespace support also in Ersatz PicoLisp diff --git a/doc/ref.html b/doc/ref.html @@ -2591,6 +2591,7 @@ abbreviations: <dd><code> <a href="#nilSym">NIL</a> <a href="refP.html#pico">pico</a> + <a href="refC.html#*CPU">*CPU</a> <a href="refO.html#*OS">*OS</a> <a href="refD.html#*DB">*DB</a> <a href="refT.html#T">T</a> diff --git a/doc/refC.html b/doc/refC.html @@ -11,6 +11,17 @@ <dl> +<dt><a name="*CPU"><code>*CPU</code></a> +<dd>(64-bit version only) A global variable holding the target CPU +(architecture). Possible values include <code>"x86-64"</code>, +<code>"ppc64"</code> or <code>"emu"</code>. See also <code><a +href="refO.html#*OS">*OS</a></code>. + +<pre><code> +: *CPU +-> "x86-64" +</code></pre> + <dt><a name="*Class"><code>*Class</code></a> <dd>A global variable holding the current class. See also <code><a href="ref.html#oop">OO Concepts</a></code>, <code><a diff --git a/doc/refO.html b/doc/refO.html @@ -25,7 +25,7 @@ href="refO.html#once">once</a></code>. <dt><a name="*OS"><code>*OS</code></a> <dd>A global constant holding the name of the operating system. Possible values include <code>"Linux"</code>, <code>"FreeBSD"</code>, <code>"Darwin"</code> or -<code>"Cygwin"</code>. +<code>"Cygwin"</code>. See also <code><a href="refC.html#*CPU">*CPU</a></code>. <pre><code> : *OS diff --git a/src64/glob.l b/src64/glob.l @@ -1,4 +1,4 @@ -# 07jun12abu +# 02nov12abu # (c) Software Lab. Alexander Burger (data 'Data) @@ -140,6 +140,7 @@ # Protected symbols initSym pico "pico" Pico + initSym CPU "*CPU" TgCPU initSym OS "*OS" TgOS initSym DB "*DB" Db1 initFun Meth "meth" doMeth @@ -557,7 +558,8 @@ : SymTabEnd # Transient symbols - initSym TgOS `*TargetOS TgOS + initSym TgCPU `*Architecture TgCPU + initSym TgOS `*TargetOS TgOS # Database root symbol '{1}' word DB1 # Name diff --git a/src64/tags b/src64/tags @@ -16,36 +16,36 @@ AI_NEXT sys/x86-64.linux.defs.l 148 AI_SOCKTYPE sys/x86-64.linux.defs.l 145 AV glob.l 7 AV0 glob.l 8 -Addr glob.l 617 -Adr glob.l 178 +Addr glob.l 619 +Adr glob.l 179 Alarm glob.l 77 -AllocErr glob.l 1160 -ArgErr glob.l 1189 -Arrow glob.l 1176 -At glob.l 158 -At2 glob.l 159 -At3 glob.l 160 -AtomErr glob.l 1195 +AllocErr glob.l 1162 +ArgErr glob.l 1191 +Arrow glob.l 1178 +At glob.l 159 +At2 glob.l 160 +At3 glob.l 161 +AtomErr glob.l 1197 Avail glob.l 11 BEG defs.l 44 BIG defs.l 35 BLK defs.l 53 BLKSIZE defs.l 54 BLKTAG defs.l 55 -BSym glob.l 154 +BSym glob.l 155 BUFSIZ sys/x86-64.linux.defs.l 26 -BadChain glob.l 1181 -BadCount glob.l 1182 -BadDot glob.l 1215 -BadFdErr glob.l 1210 -BadInput glob.l 1214 +BadChain glob.l 1183 +BadCount glob.l 1184 +BadDot glob.l 1217 +BadFdErr glob.l 1212 +BadInput glob.l 1216 BlkIndex glob.l 68 BlkLink glob.l 69 Break glob.l 50 -BrkErr glob.l 1204 +BrkErr glob.l 1206 Buf glob.l 12 BufEnd glob.l 54 -Bye glob.l 180 +Bye glob.l 181 CDR defs.l 37 CELLS defs.l 6 CHAR_DIGIT defs.l 64 @@ -53,48 +53,49 @@ CHAR_LETTER defs.l 63 CHAR_LOWERCASE defs.l 62 CHAR_UPPERCASE defs.l 61 CNT defs.l 34 -CSym glob.l 153 +CPU glob.l 143 +CSym glob.l 154 C_CC sys/x86-64.linux.defs.l 73 C_IFLAG sys/x86-64.linux.defs.l 71 C_LFLAG sys/x86-64.linux.defs.l 72 -CaseBlocks glob.l 624 -CaseData glob.l 754 -CaseLower glob.l 1115 -CaseUpper glob.l 1091 +CaseBlocks glob.l 626 +CaseData glob.l 756 +CaseLower glob.l 1117 +CaseUpper glob.l 1093 Catch glob.l 20 -CbErr glob.l 1163 +CbErr glob.l 1165 Child glob.l 44 Children glob.l 43 -Chr glob.l 585 -CircFree glob.l 1180 -Class glob.l 167 -CloseErr glob.l 1206 -CntErr glob.l 1191 +Chr glob.l 587 +CircFree glob.l 1182 +Class glob.l 168 +CloseErr glob.l 1208 +CntErr glob.l 1193 Code main.l 4 -DB glob.l 144 +DB glob.l 145 DB1 defs.l 11 DBs glob.l 63 DIG defs.l 36 DOT defs.l 45 D_NAME sys/x86-64.linux.defs.l 122 -Dashes glob.l 1185 +Dashes glob.l 1187 Data glob.l 4 -Db1 glob.l 564 +Db1 glob.l 566 DbBlock glob.l 66 DbFile glob.l 64 DbFiles glob.l 65 DbJnl glob.l 70 DbLog glob.l 71 -DbRdErr glob.l 1229 -DbSizErr glob.l 1231 -DbSyncErr glob.l 1223 -DbWrErr glob.l 1230 -DbfErr glob.l 1226 -Dbg glob.l 163 -Delim glob.l 1174 -DelimEnd glob.l 1175 -DivErr glob.l 1198 -DlErr glob.l 1241 +DbRdErr glob.l 1231 +DbSizErr glob.l 1233 +DbSyncErr glob.l 1225 +DbWrErr glob.l 1232 +DbfErr glob.l 1228 +Dbg glob.l 164 +Delim glob.l 1176 +DelimEnd glob.l 1177 +DivErr glob.l 1200 +DlErr glob.l 1243 EACCES sys/x86-64.linux.defs.l 9 EAGAIN sys/x86-64.linux.defs.l 8 EBADF sys/x86-64.linux.defs.l 7 @@ -104,40 +105,40 @@ END defs.l 46 ENOENT sys/x86-64.linux.defs.l 5 EPIPE sys/x86-64.linux.defs.l 10 EXTERN defs.l 50 -Env glob.l 590 -EnvApply glob.l 601 -EnvArgs glob.l 597 -EnvBind glob.l 591 -EnvCls glob.l 599 -EnvCo glob.l 584 -EnvCo7 glob.l 608 -EnvCtlFrames glob.l 595 -EnvEnd glob.l 612 -EnvErrFrames glob.l 594 -EnvInFrames glob.l 592 -EnvIntern glob.l 596 -EnvKey glob.l 600 -EnvMake glob.l 602 -EnvMid glob.l 607 -EnvNext glob.l 598 -EnvOutFrames glob.l 593 -EnvParseC glob.l 605 -EnvParseEOF glob.l 606 -EnvParseX glob.l 604 -EnvProtect glob.l 610 -EnvTask glob.l 609 -EnvTrace glob.l 611 -EnvYoke glob.l 603 -EofErr glob.l 1212 -Err glob.l 173 -ErrTok glob.l 1184 -ExecErr glob.l 1159 -Ext glob.l 165 -ExtErr glob.l 1193 +Env glob.l 592 +EnvApply glob.l 603 +EnvArgs glob.l 599 +EnvBind glob.l 593 +EnvCls glob.l 601 +EnvCo glob.l 586 +EnvCo7 glob.l 610 +EnvCtlFrames glob.l 597 +EnvEnd glob.l 614 +EnvErrFrames glob.l 596 +EnvInFrames glob.l 594 +EnvIntern glob.l 598 +EnvKey glob.l 602 +EnvMake glob.l 604 +EnvMid glob.l 609 +EnvNext glob.l 600 +EnvOutFrames glob.l 595 +EnvParseC glob.l 607 +EnvParseEOF glob.l 608 +EnvParseX glob.l 606 +EnvProtect glob.l 612 +EnvTask glob.l 611 +EnvTrace glob.l 613 +EnvYoke glob.l 605 +EofErr glob.l 1214 +Err glob.l 174 +ErrTok glob.l 1186 +ExecErr glob.l 1161 +Ext glob.l 166 +ExtErr glob.l 1195 ExtN glob.l 45 -Extern glob.l 566 +Extern glob.l 568 Extn glob.l 46 -ExtraErr glob.l 1168 +ExtraErr glob.l 1170 FD_CLOEXEC sys/x86-64.linux.defs.l 23 FD_SET sys/x86-64.linux.defs.l 111 FLOCK sys/x86-64.linux.defs.l 36 @@ -152,22 +153,22 @@ F_SETLKW sys/x86-64.linux.defs.l 51 F_SETOWN sys/x86-64.linux.defs.l 52 F_UNLCK sys/x86-64.linux.defs.l 46 F_WRLCK sys/x86-64.linux.defs.l 45 -Flock glob.l 615 -Fork glob.l 179 -ForkErr glob.l 1208 +Flock glob.l 617 +Fork glob.l 180 +ForkErr glob.l 1210 GcCount glob.l 51 GcMark glob.l 74 GcMarkEnd glob.l 129 -GcSymEnd glob.l 570 +GcSymEnd glob.l 572 GetBinZ_FB glob.l 30 -Get_A glob.l 587 -Giveup glob.l 1158 +Get_A glob.l 589 +Giveup glob.l 1160 HEAP defs.l 5 -HashBlank glob.l 1165 +HashBlank glob.l 1167 Heaps glob.l 10 Hear glob.l 39 Home glob.l 9 -Hup glob.l 169 +Hup glob.l 170 I defs.l 14 II defs.l 15 III defs.l 16 @@ -176,55 +177,55 @@ INTERN defs.l 48 IPPROTO_IPV6 sys/x86-64.linux.defs.l 131 IPV6_V6ONLY sys/x86-64.linux.defs.l 132 ISIG sys/x86-64.linux.defs.l 74 -ISym glob.l 150 +ISym glob.l 151 IV defs.l 17 IX defs.l 22 -IdErr glob.l 1228 -IgnLog glob.l 1179 -InBye glob.l 1145 +IdErr glob.l 1230 +IgnLog glob.l 1181 +InBye glob.l 1147 InFDs glob.l 25 -InFile glob.l 588 +InFile glob.l 590 InFiles glob.l 26 -IpBindErr glob.l 1237 -IpGetsocknameErr glob.l 1234 -IpListenErr glob.l 1238 -IpReuseaddrErr glob.l 1236 -IpSocketErr glob.l 1233 -IpV6onlyErr glob.l 1235 -Jam glob.l 1144 -JnlErr glob.l 1227 +IpBindErr glob.l 1239 +IpGetsocknameErr glob.l 1236 +IpListenErr glob.l 1240 +IpReuseaddrErr glob.l 1238 +IpSocketErr glob.l 1235 +IpV6onlyErr glob.l 1237 +Jam glob.l 1146 +JnlErr glob.l 1229 L_LEN sys/x86-64.linux.defs.l 40 L_PID sys/x86-64.linux.defs.l 41 L_START sys/x86-64.linux.defs.l 39 L_TYPE sys/x86-64.linux.defs.l 37 L_WHENCE sys/x86-64.linux.defs.l 38 -Led glob.l 176 +Led glob.l 177 LineC glob.l 49 LineX glob.l 79 Link glob.l 19 Lisp glob.l 80 LispEnd glob.l 128 -LockErr glob.l 1225 -LstErr glob.l 1196 +LockErr glob.l 1227 +LstErr glob.l 1198 MAXPATHLEN sys/x86-64.linux.defs.l 29 -MakeErr glob.l 1200 +MakeErr glob.l 1202 MaxBlkSize glob.l 67 -Meth glob.l 145 +Meth glob.l 146 Mic glob.l 37 -Month glob.l 1147 -Msg glob.l 174 -MsgErr glob.l 1203 +Month glob.l 1149 +Msg glob.l 175 +MsgErr glob.l 1205 NIX defs.l 43 NI_MAXHOST sys/x86-64.linux.defs.l 135 NI_NAMEREQD sys/x86-64.linux.defs.l 136 -NSym glob.l 151 +NSym glob.l 152 NUMBER defs.l 47 Nil glob.l 134 -NoFdErr glob.l 1211 +NoFdErr glob.l 1213 NoMemory main.l 211 -NumErr glob.l 1190 +NumErr glob.l 1192 ONE defs.l 9 -OS glob.l 143 +OS glob.l 144 O_APPEND sys/x86-64.linux.defs.l 20 O_ASYNC sys/x86-64.linux.defs.l 54 O_CREAT sys/x86-64.linux.defs.l 17 @@ -234,33 +235,33 @@ O_RDONLY sys/x86-64.linux.defs.l 14 O_RDWR sys/x86-64.linux.defs.l 16 O_TRUNC sys/x86-64.linux.defs.l 19 O_WRONLY sys/x86-64.linux.defs.l 15 -OpenErr glob.l 1205 -OrgTermio glob.l 614 +OpenErr glob.l 1207 +OrgTermio glob.l 616 OutFDs glob.l 27 -OutFile glob.l 589 +OutFile glob.l 591 OutFiles glob.l 28 PIPE_BUF sys/x86-64.linux.defs.l 27 -PPid glob.l 156 -PRepl glob.l 1143 -PairErr glob.l 1194 +PPid glob.l 157 +PRepl glob.l 1145 +PairErr glob.l 1196 Penv glob.l 56 Pico glob.l 137 -Pid glob.l 157 -PidSigMsg glob.l 1161 -PipeErr glob.l 1207 +Pid glob.l 158 +PidSigMsg glob.l 1163 +PipeErr glob.l 1209 Pnl glob.l 57 -Prompt glob.l 162 -ProtErr glob.l 1186 -PutB glob.l 586 +Prompt glob.l 163 +ProtErr glob.l 1188 +PutB glob.l 588 PutBinBZ glob.l 29 -QuitMsg glob.l 1162 -Quote glob.l 146 +QuitMsg glob.l 1164 +Quote glob.l 147 RTLD_GLOBAL sys/x86-64.linux.defs.l 33 RTLD_LAZY sys/x86-64.linux.defs.l 32 -Redefined glob.l 1166 -ReentErr glob.l 1201 -RenErr glob.l 1199 -Repl glob.l 1142 +Redefined glob.l 1168 +ReentErr glob.l 1203 +RenErr glob.l 1201 +Repl glob.l 1144 Ret main.l 8 RetE_E main.l 28 RetNil main.l 22 @@ -269,8 +270,8 @@ Retc main.l 10 Retnc main.l 13 Retnz main.l 19 Retz main.l 16 -RolbLog glob.l 1178 -Run glob.l 168 +RolbLog glob.l 1180 +Run glob.l 169 SA_FLAGS sys/x86-64.linux.defs.l 84 SA_HANDLER sys/x86-64.linux.defs.l 82 SA_MASK sys/x86-64.linux.defs.l 83 @@ -305,7 +306,7 @@ SOCK_DGRAM sys/x86-64.linux.defs.l 126 SOCK_STREAM sys/x86-64.linux.defs.l 125 SOL_SOCKET sys/x86-64.linux.defs.l 129 SO_REUSEADDR sys/x86-64.linux.defs.l 130 -SSym glob.l 152 +SSym glob.l 153 STACK defs.l 7 STAT sys/x86-64.linux.defs.l 57 ST_MODE sys/x86-64.linux.defs.l 58 @@ -314,36 +315,36 @@ ST_SIZE sys/x86-64.linux.defs.l 59 SYM defs.l 39 S_IFDIR sys/x86-64.linux.defs.l 62 S_IFMT sys/x86-64.linux.defs.l 61 -Scl glob.l 166 +Scl glob.l 167 Seed glob.l 31 -SelectErr glob.l 1216 +SelectErr glob.l 1218 Sep0 glob.l 52 Sep3 glob.l 53 -SetFD glob.l 1173 -Sig1 glob.l 170 -Sig2 glob.l 171 +SetFD glob.l 1175 +Sig1 glob.l 171 +Sig2 glob.l 172 Sigio glob.l 78 Signal glob.l 60 Slot glob.l 35 -Solo glob.l 155 +Solo glob.l 156 SpMiPipe glob.l 38 Spkr glob.l 36 Stack0 glob.l 15 Stacks glob.l 16 -StkErr glob.l 1188 +StkErr glob.l 1190 StkLimit glob.l 18 StkSize glob.l 17 StrC glob.l 48 StrX glob.l 47 -SuparErr glob.l 1213 -SuperErr glob.l 1167 -SymErr glob.l 1192 -SymNsErr glob.l 1187 +SuparErr glob.l 1215 +SuperErr glob.l 1169 +SymErr glob.l 1194 +SymNsErr glob.l 1189 SymTab glob.l 133 -SymTabEnd glob.l 557 -Sync glob.l 1146 +SymTabEnd glob.l 558 +Sync glob.l 1148 TAIL defs.l 40 -TBuf glob.l 619 +TBuf glob.l 621 TCSADRAIN sys/x86-64.linux.defs.l 77 TERMIOS sys/x86-64.linux.defs.l 70 TMS sys/x86-64.linux.defs.l 65 @@ -357,57 +358,58 @@ TM_SEC sys/x86-64.linux.defs.l 114 TM_YEAR sys/x86-64.linux.defs.l 119 TOP defs.l 10 TRANSIENT defs.l 49 -TSym glob.l 147 +TSym glob.l 148 Talking glob.l 42 Tell glob.l 40 TellBuf glob.l 41 -TellErr glob.l 1232 +TellErr glob.l 1234 Termio glob.l 21 -TgOS glob.l 560 -This glob.l 161 -ThrowErr glob.l 1169 +TgCPU glob.l 561 +TgOS glob.l 562 +This glob.l 162 +ThrowErr glob.l 1171 TickS glob.l 34 TickU glob.l 33 Time glob.l 22 -Tio glob.l 1140 -Tms glob.l 616 -TrSyncErr glob.l 1224 +Tio glob.l 1142 +Tms glob.l 618 +TrSyncErr glob.l 1226 Transient glob.l 75 -Trc1 glob.l 1170 -Trc2 glob.l 1171 -TruncErr glob.l 1222 -Tsm glob.l 177 +Trc1 glob.l 1172 +Trc2 glob.l 1173 +TruncErr glob.l 1224 +Tsm glob.l 178 TtyPid glob.l 24 UDPMAX defs.l 58 USec glob.l 23 -UdpOvflErr glob.l 1239 -UndefErr glob.l 1240 -Uni glob.l 175 -Up glob.l 172 +UdpOvflErr glob.l 1241 +UndefErr glob.l 1242 +Uni glob.l 176 +Up glob.l 173 V defs.l 18 VI defs.l 19 VII defs.l 20 VIII defs.l 21 VMIN sys/x86-64.linux.defs.l 75 VTIME sys/x86-64.linux.defs.l 76 -VarErr glob.l 1197 -Version glob.l 573 +VarErr glob.l 1199 +Version glob.l 575 WNOHANG sys/x86-64.linux.defs.l 107 WUNTRACED sys/x86-64.linux.defs.l 108 -WaitPidErr glob.l 1209 -WrBytesErr glob.l 1217 -WrChildErr glob.l 1218 -WrJnlErr glob.l 1220 -WrLogErr glob.l 1221 -WrSyncErr glob.l 1219 -YieldErr glob.l 1202 +WaitPidErr glob.l 1211 +WrBytesErr glob.l 1219 +WrChildErr glob.l 1220 +WrJnlErr glob.l 1222 +WrLogErr glob.l 1223 +WrSyncErr glob.l 1221 +YieldErr glob.l 1204 ZERO defs.l 8 -Zap glob.l 164 -_a_ glob.l 1152 -_ap_ glob.l 1153 -_dot_ glob.l 1154 -_r_ glob.l 1150 -_w_ glob.l 1151 +Zap glob.l 165 +_a_ glob.l 1154 +_ap_ glob.l 1155 +_dot_ glob.l 1156 +_r_ glob.l 1152 +_w_ glob.l 1153 addAE_A big.l 1517 adduAE_A big.l 540 allocAE_A main.l 207