1$Id: History,v 1.1350 2021-12-08 20:02:45 phil Exp $ 2 3The Macro Implementation of SNOBOL4 in C (CSNOBOL4) history 4 5*** 2.2.2 (tag REL_2_2_2) 6 712/8/2021: 8 configure: change version to 2.2.2 9 1012/8/2021: 11 include/msvc/vars.h: add $v to VARS (v between a and z) 12 1312/4/2021: 14 COPYRIGHT, README: Update Copyright years 15 1611/20/2021: 17 lib/snolib/getstring.c: add nmgetstring (check for, return NULL) 18 include/load.h: add nmgetstring prototype 19 Use nmgetstring in places checking for NULL before OR after 20 (may cure some SMALL memory leaks (after a malloc failure?) 21 lib/snolib/file.c, modules/digest/digest.c 22 modules/ffi/ffi.c, modules/sqlite3/sqlite3mod.c 23 modules/time/time.c 24 2511/18/2021: 26 configure: add support for DragonFly (reported by Harald Arnesen) 27 28*** 2.2.2-pre1 (tag REL_2_2_2_PRE1) 29 3011/17/2021: 31 configure: change version to 2.2.2-pre1 32 337/7/2021: 34 doc/snobol4func.1.pea: improve TRACE function info 35 366/10/2021: 37 INSTALL: note parallel make fails (suggested by hacksaw) 38 remove note about "time" package requirement 39 402/28/2021: 41 Makefile2.m4: add (back) man directory creation 42 (reported by Rafal M. Sulejman) 43 442/6/2021: 45 modules/ffi/ffi.c: fix for Solus Linux (reported by Neil Rowe) 46 471/25/2021: 48 configure/check: honor CPPFLAGS environment variable 49 (set by FreeBSD ports framework with USE=readline) 50 511/24/2021: 52 configure: add --without-lib{edit,readline} 53 541/14/2021: 55 .cvsignore file additions 56 update TODO.soon 57 581/10/2021: 59 snolib/ezio.sno: avoid ENDFILE(null) 60 611/1/2021! 62 snolib/setuputil.sno: add help to usage message (12/18/2020) 63 Makefile2.m4: add debug_modules (12/21/2020) 64 6512/23/2020: 66 lib/snolib/file.c, pml.h: add FILE_LIB_FIND 67 6812/20/2020: 69 lib/init.c: add -z to usage 70 7112/19/2020: 72 INSTALL: Add --with(out)-docs 73 74*** 2.2.1 (tag REL_2_2_1) 75 7612/19/2020: 77 Makefile2.m4: use ../../snobol4 in RUNMAKE, flush PATH 78 caused heartburn under cygwin? 79 8012/18/2020: 81 configure: display bad option; add --with-docs to help 82 output MAN_COMPRESS to config.sno 83 update to version 2.2.1 (51 years since SNOBOL4 v3.7) 84 Makefile2.m4: define/use INSTALL_MAN_PAGES macro 85 snolib/setuputil.sno: honor MAN_COMPRESS 86 config/win32/linux-mingw.sh: update SNOBOL4 for new Makefile.mod 87 config/win32/mingw.mak: comments 88 8912/17/2020: 90 configure: add --with-docs, so symmetric for FreeBSD ports 91 9212/16/2020: 93 doc/snobol4.1.pea: add snobol4load 94 doc/snobol4load.3.pea: clean up, add snopea to example 95 doc/snopea.7.pea: add \= 96 snolib/snopea.sno: add \= 97 snolib/setuputil.sno: add snopea docs for modulename.sno output 98 9912/15/2020: 100 configure: check for compressed man pages 101 Makefile2.m4: man page compression 102 remove lint 103 savage GENERATED_DOCS 104 don't install load.txt 105 Makefile: cleanup, add comments 106 10712/14/2020: 108 doc/snobol4load.3.pea (new), from load.txt 109 doc/Makefile: add snobol4load.3 110 11112/13/2020: 112 configure: add --without-docs, remove SNOBIN 113 Makefile2.m4: honor INSTALL_DOCS 114 11512/12/2020: 116 Makefile2.m4: pass -N/-I to module makes in SNOBOL4 117 modules/Makefile.mod: default SNOBOL4 to snobol, remove INC 118 11912/12/2020: 120 Makefile: clean removes module .dll files 121 add install_notiming 122 setuputil.sno: honor -v for test 123 modules/Makefile.mod: test_verbose (test w/ -v) 124 run snobol4 from PATH 125 add/use IN 126 remove SNOBOL4 from IN 127 make OUT/debug depend on IN 128 modules/*/Makefile: add test_verbose 129 modules/base64/test.sno: remove /dev/tty output 130 configure Makefile2.m4: use for loop for module actions 131 pass PATH in for snobol4 binary 132 flush MODULES_GENERATED 133 copy xsnobol4 to snobol4 before module tests 134 add install_notiming 135 13612/10/2020: 137 Makefile2.m4: create relative links, per FreeBSD port 138 13912/5/2020: 140 modules/fork/fork.c, modules/sprintf/sprintf.c: fix NAME line 141 142*** 2.2 (tag REL_2_2) 143 14412/5/2020: 145 configure, lib/snolib/host.h: change version to 2.2 146 14711/30/2020: 148 timing: add /bin/kenv for smbios on FreeBSD 149 15011/27/2020: 151 lib/openssl/tlsio_obj.c: TLS1_3_VERSION not in 1.1.0 152 found by Harald Arnesen on OpenBSD w/ LibreSSL 153 15411/26/2020: 155 snolib/{http,tcp,url}.sno: add https URL support 156 lib/io.c: allow binary read less than full recl 157 Thanks to Burkhard Meißner! 158 lib/openssl/tlsio_obj.c: remove SSL_VERIFY_FAIL_IF_NO_PEER_CERT 159 (for server use?) 160 16111/25/2020: 162 modules/com/com.cpp: turn off DEBUG 163 try (again) to quiet format warnings 164 165*** 2.2-pre3 (tag REL_2_2_PRE3) 166 16711/22/2020: 168 configure: change version to 2.2-pre3 169 doc/snobol4io.1.pea: verify verbiage 170 17111/21/2020: 172 lib/compio_obj.c: fix compression level 173 lib/io.c: comments, disable recl warning 174 17511/20/2020: 176 doc/snobol4io.1.pea: add /tls 177 modules/digest/digest.c: add docs for snobol4digest.3 178 17911/19/2020: 180 Add inet "verify" option for TLS 181 tlsio_obj.c: add SSL_CTX_set_options, SSL_CTX_set_min_proto_version, 182 optional: SSL_CTX_set_verify 183 18411/18/2020: 185 LOTS: Quash -Wextra warnings 186 configure: add -Wno-unused-parameter 187 18811/17/2020: 189 Implement TLS I/O 190 Makefile2.m4: add TLSIO_OBJ_C default, tlsio_obj.o rule 191 configure: check for openssl/bio.h & ssl.h, enable TLS_IO 192 include/inet.h: add argument names 193 include/io_obj.h: add tlsio_open() 194 lib/io.c: add tlsio_open call if TLS_IO defined 195 lib/stdio_obj.c: switch to str.h 196 lib/bsd/inet(6).c: fix inet_socket args 197 lib/dummy/inet.c: fix tcp/udp_socket flags arg 198 lib/openssl/tls_io.c (new) 199 20011/15/2020: 201 Eliminate module warnings: 202 modules/base64/base64.c 203 modules/ffi/ffi.c 204 modules/sqlite3/sqlite3mod.c 205 modules/time/time.c 206 20711/15/2020: 208 Make it possible to configure to use MacPorts libraries 209 INSTALL: update 210 Makefile2.m4: add ADD_SNOBOL4_LDFLAGS macro, 211 add CONFIG_CPPFLAGS, LDFLAGS variables 212 define CONFIG_{C,CPP,LD}FLAGS for host.o 213 configure: add --add-snobol4-ldflags to use ADD_SNOBOL4_LDFLAGS 214 convert most ADD_LDFLAGS to ADD_SNOBOL4_LDFLAGS 215 export LDFLAGS for config/check 216 config/check: use LDFLAGS environment variable 217 include/module.h: eliminate warning from DECLARE_MODULE 218 host.[ch]: add HOST_CONFIG_{C,CPP,LD}FLAGS 219 module/dirs/dirs.c, module/stat/stat.c: eliminate unused variables 220 snolib/setuputil.sno: fetch, use HOST_CONFIG_{C,CPP,LD}FLAGS 221 22211/14/2020: 223 modules/zlib (new) 224 configure: add zlib module 225 22611/14/2020: 227 modules/sqlite3/sqlite3mod.c: use sqlite3_prepare for old sqlite 228 22911/13/2020: 230 modules/digest: revamp using EVP, digest lookup by name 231 makes SHA3 algorithms available 232 tweak to build on OpenSSL older than 1.1.0 233 configure: tweak to build on OpenSSL older than 1.1.0 234 23511/12/2020: 236 configure: test for SHA512 in libcrypto for digest module 237 modules/digest (new): MD5, SHA{1,224,256,384,512} 238 modules/*/Makefile: add debug 239 modules/Makefile.mod: add debug target 240 24111/12/2020: 242 lib/compio_obj.c, lib/io.c: Implement compression level 243 (digit after compression option) 244 Makefile2.m4: fix "make install" problem reported by Phillip Thomas 245 snolib/setuputil.sno: copy lines bracketed by *=snobol4 and *=cut 246 doc/snobol4func.1.pea: document EXTERNAL_{DATATYPE,MODULE_{NAME,PATH}} 247 doc/snobol4io.1.pea: document compression options 248 24911/11/2020: 250 Implement compressed file I/O as an I/O object layer 251 configure: detect libz, bzip2, lzma libraries 252 lib/compio_obj.c (new) 253 lib/io.c: add file compression 254 make ioo_close public 255 include/compio_obj.h (new) 256 include/io_obj.h: add ioo_close 257 25811/11/2020: 259 lib/loadx.c: keep lib name & path, add EXTERNAL_MODULE_{NAME,PATH} 260 pml.h: add EXTERNAL_MODULE_{NAME,PATH} 261 26211/10/2020: 263 modules/fork/fork.c: add GETPID, GETPPID 264 lib/bsd/inet.c: fix typo 265 26611/10/2020: 267 snolib/setuputil.sno: Fix for MSYS2 268 configure: define IMPORT/EXPORT on Cygwin/MSYS 269 27011/10/2020: 271 Revamp module ABI once again! 272 Create SNOBOL4_MODULE macro, no more mod_xxx.c 273 Create module_instance_private 274 Makefile.m4: remove MOD_SUPPORT_SRC install 275 modules/random/test.sno 276 configure: remove MOD_SUPPORT_SRC 277 config/win32/config.sno: remove MOD_SUPPORT_SRC 278 include/handle.h: remove new_handle 279 include/lib.h: add module(_instance)_{init,cleanup} 280 include/module.h: add get_module_instance method 281 replace htlist with module_instance_private 282 add SNOBOL4_MODULE macro 283 lib/loadx.c: EXTERNAL_DATATYPE returns module|type 284 pass original name/path to libopen, save as name 285 check oslib pointers for dups 286 lib/snolib/handle.c: add module_instance_private 287 remove new_handle 288 add handle_cleanup_tables 289 snolib/setuputil.c: remove MOD_SUPPORT_SRC 290 29111/8/2020: 292 Revamp module ABI, again; create EXTERNAL_DATATYPE 293 pml.h: add EXTERNAL_DATATYPE 294 include/handle.h: new_handle2: take modinst again 295 include/lib.h: add handle_table_name 296 include/module.h: remove unused prev from struct lib 297 lib/loadx.c: do os_find_symbol for "module" 298 add EXTERNAL_DATATYPE 299 lib/stdio_obj.c: put 'b' second for glibc 2.9 thru 21 fmemopen 300 lib/bsd/load.c: put in crock for module lookup (time to kill it?) 301 lib/snolib/handle.c: debug to stderr 302 new_handle2: take modinst again 303 add handle_table_name 304 module_(instance_){init,cleanup} no longer SNOLOAD_ABI 305 module/lots/module.c: add SNOBOL4_MODULE invocations 306 pick presentable table names 307 modules/com/com.cpp: change INTEGER to EXTERNAL in LOAD calls 308 modules/dirs/dirs.c: change INTEGER to EXTERNAL in LOAD calls 309 modules/random/random.c: try /dev/urandom before /dev/random 310 shift usec or nsec up to cover high order bits 311 pkg/win32/install.bat: "C:\Program Files\SNOBOL4 312 snolib/sdb.sno: don't display RETVAL on FRETURN 313 31411/6/2020: 315 configure: Try treating MSYS same as CYGWIN 316 31711/6/2020: 318 include/lib.h: fix find_snolib_directory 319 320*** 2.2-pre2 (tag REL_2_2_PRE2) 321 32211/6/2020: 323 configure: change version to 2.2-pre2 324 32511/6/2020: 326 Try to find library directory on Windows 327 Makefile2.m4: add DIRNAME_C, dirname.o rule (not (yet?) used) 328 configure: comment out dirname test (for now?) 329 config/djgpp/Makefile: add dirname.o rule (not (yet?) used) 330 config/win32/config.h: add HAVE_FIND_SNOLIB_DIRECTORY 331 add NEED_DIRNAME (MSVC) 332 add HAVE_DIRNAME, HAVE_GETOPT (MINGW) 333 config/win32/mingw.mak: add lib/win32/dirname.c, lib/win32/findlib.c 334 config/win32/ntmsvc.mak: add dirname.{c,obj} findlib.{c,obj} 335 include/lib.h: add NEED_DIRNAME/dirname HAVE_FIND_SNOLIB_DIR/find_snolib_dir 336 lib/init.c: pass argv[0] to pathinit, add HAVE_FIND_SNOLIB_DIR/find_snolib_dir 337 33811/5/2020: 339 Move birthtime & nsec ugliness to configure script 340 configure: set STAT_CFLAGS 341 modules/stat/stat.c: just depend on st_{a,c,m,birth}time(nsec) defines 342 34311/2/2020: 344 config.h: SNOLIB_BASE "C:\Program Files\SNOBOL4" 345 pkg/win32/README.win32: ditto 346 INSTALL: update 347 34811/2/2020: 349 config/vms/config.h: flush PML_NDBM 350 lib/win32/sys.c: comments 351 lib/win32/exists.c: remove UTF-16 comments 352 353*** 2.2-pre1 (tag REL_2_2_PRE1) 354 35510/31/2020: 356 configure: change version to 2.2-pre1 357 35810/31/2020: 359 modules/Makefile.mod: make build depend on ../../config.sno 360 36110/30/2020: 362 Makefile: add tested to M2TARGETS 363 doc/Makefile: add snobol4json.3[.html] 364 snolib/utf.sno: use CHAR; make RUNE check for UTF-16 surrogate range 365 snolib/json.sno: implement \Uxxxxxxxx 366 change functions names to JSON_{EN,DE}CODE 367 add documentation 368 accept "null" 369 test/json1.{sno,ref}: add \U test 370 change function names 371 add null tests 372 37310/30/2020: 374 test/loaderr.sno: add library args to LOADs 375 (unloading "self" is fatal on FreeBSD 3.2!) 376 37710/29/2020: 378 Remove all use of make -C (missing in FreeBSD 3.2!)!! 379 Makefile, Makefile.m4, configure 380 38110/28/2020: 382 Makefile: cleanup remove config.sno 383 38410/27/2020: 385 Makefile, Makefile2.m4: use $(MAKE) -C doc .... 386 38710/27/2020: 388 snolib/json.sno: use own hex conversions, so can test 389 test/tests.in: add json1.sno 390 test/json1.{sno,ref} (new): test program for json.sno 391 39210/27/2020: 393 config/win32/ntmsvc.mak: detect x64, use C99 long long conversions 394 39510/26/2020: 396 configure: back to generated build_modules list 397 39810/26/2020: 399 Makefile2.m4: remove sleep.o sdbm*.o rules 400 40110/26/2020: 402 config/win32/config.h: changed SNOLIB_BASE to C:\Program Files\CSNOBOL4 403 pkg/win32/README.win32: update base 404 40510/25/2020: 406 modules/stat/stat.c: fetch OpenBSD birthtime (zero in OBSD 6.8?!) 407 40810/25/2020: 409 Implement setup.sno test command 410 Makefile: add test_modules 411 lib/snolib/handle.c: debug ifdefs 412 modules/Makefile.mod: add SETUPOPT for debug 413 use setup.sno test command! 414 modules/dirs/test.sno: create & check table 415 modules/sqlite3/setup.sno: add tests entry 416 modules/sqlite3/sqlite3.mod: remove stmt handles!! 417 test.sno: just check type_str 418 modules/sqlite3/setup.sno: add tests entry 419 modules/time/test.sno: fix sleep test to run faster (most of the time) 420 /generic/sleep.c: sleep a whole second if any fration given 421 /test2.sno: copied from tests/time.sno 422 modules/*/*.ref (new) 423 snolib/cmp.sno (new) 424 snolib/setuputil.sno: add "test" command (for posix) 425 test/tests.in: turned off random.sno 426 42710/24/2020: 428 configure: Solaris make doesn't have ?= 429 43010/24/2020: 431 include/load.h: "module" now a pointer 432 include/module.h (new): move module ABI here, add module_init function 433 lib/snolib/mod_gcc.c, mod_win32.cpp: export module pointer. 434 lib/snolib/handle.c: add module_init function 435 modules/dirs/dirs.c 436 modules/ffi/ffi.c 437 modules/ndbm/ndbm.c 438 modules/sqlite3/sqlite3mod.c 439 modules/stcl/stcl.c 440 module now a pointer 441 44210/24/2020: 443 configure: rename MOD_SUPPORT to MOD_SUPPORT_C 444 Makefile2.m4: install MOD_SUPPORT_C in INCLUDE_DIR 445 snolib/setuputil.sno: use MOD_SUPPORT_C, look in INCLUDE_DIR 446 44710/23/2020: 448 modules/random/random.c: use inttypes.h, if available 449 configure: check for inttypes.h if stdint not available (FreeBSD 4.9) 450 45110/23/2020: 452 cpuid.c: gcc 2.95.4 (FreeBSD 4.9) doesn't define __GNUC_PATCHLEVEL__(!) 453 45410/23/2020: 455 Include <unistd.h> if available for ssize_t (FreeBSD 4.9!) 456 include/lib.h (if getline needed) 457 lib/io.c 458 lib/auxil/bufio_obj.c 459 lib/auxil/getline.c 460 lib/auxil/memio_obj.c 461 lib/bsd/ptyio_obj.c 462 lib/dummy/ptyio_obj.c 463 lib/posix/memio_obj.c 464 lib/win32/inetio_obj.c 465 lib/win32/ptyio_obj.c 466 modules/base64/base64.c 467 46810/23/2020: 469 Makefile2.m4, configure: back to MODULES_GENERATED 470 47110/22/2020: 472 modules/base64/base64.c: remove debug 473 configure: fix a few echo redirects 474 Makefile2.m4: tested: build_modules 475 modules/stat/test.c: add ST_TYPE_STR 476 modules/stat/stat.c: fix S_IFSOCK 477 47810/22/2020: 479 modules/Makefile.mod: remove .so output/dependency 480 (wrong when dynamic library isn't a .so file) 481 48210/20/2020: 483 turn off tests/sleep.sno tests/ndbm.sno 484 modules/time/time.sno: copy of sleep.sno 485 48610/20/2020: 487 Makefile2 => modules/X/Makefile => modules/Makefile.mod 488 configure: output {build,clean,install,test}_modules to config.m4 489 modules/Makefile.mod (new): common makefile, has test target 490 modules/*/Makefile: invoke ../Makefile.mod 491 modules/{base64,dirs,logic,ndbm,sprintf,stat}/test.sno (new) 492 49310/20/2020: 494 Add FILE_NEWER (for use by setuptil.sno) 495 pml.h: add FILE_NEWER 496 include/lib.h: newer 497 Makefile2.m4: newer.o 498 config/win32/{mingw,ntmsvc}.mak: newer.o(bj) 499 config/djgpp/Makefile: newer.o 500 lib/generic/newer.c (new): newer function 501 lib/snolib/file.c: FILE_NEWER function 502 50310/20/2020: 504 configure: deal with OSX stat st_Xtimespec 505 modules/stat/stat.c: use config.sno STAT_CFLAGS 506 50710/20/2020: 508 add snolib/json.sno 509 51010/20/2020: 511 add base64 512 configure 513 modules/base64/base64.c 514 modules/base64/setup.sno 515 modules/base64/funcs.sno 516 51710/19/2020: 518 rename mod_msvc.cpp to mod_win32.cpp 519 config/win32/linux-mingw.sh 520 config/win32/config.sno 521 52210/19/2020: 523 modules/stat/stat.c: swap to ifdef __CYGWIN__ 524 lib/break.c: register for cleanup on first malloc 525 52610/18/2020: 527 flush mentions of __P 528 lib/auxil/getopt.c 529 lib/bsd/inet.c 530 lib/bsd/inet6.c 531 lib/djgpp/osinit.c 532 lib/dummy/inet.c 533 lib/dummy/ptyio_obj.c 534 lib/win32/inetio_obj.c 535 53610/18/2020: 537 modules/stat/stat.c: try to deal with Cygwin/Apple birth time mess 538 53910/18/2020: 540 one more import/export go-around 541 Makefile2.m4: add -DSNOBOL4 to MYCPPFLAGS 542 main.c: flush SNOBOL4_PROVIDER 543 config/vms/descrip.mms: define SNOBOL4 544 config/win32/borland.mak: add -DSNOBOL4 to CFLAGS 545 config/win32/config.h: use ifndef SNOBOL4 for IMPORT action 546 config/win32/mingw.mak: add -DSNOBOL4 to CFLAGS 547 add IMPLIB comment, SETUPFLAGS 548 config/win32/ntmsvc.mak: add -DSNOBOL4 to CFLAGS 549 include/load.h: use SNOBOL4 to select SNOLOAD_API IMPORT vs EXPORT 550 include/snobol4.h: use SNOBOL4 & SHARED to select SNOBOL4_API behav. 551 lib/init: flush SNOBOL4_PROVIDER 552 lib/snolib/getstring.c: include comments, flush SNOLOAD_API_PROVIDER 553 lib/snolib/retstring.c: flush SNOLOAD_API_PROVIDER 554 55510/18/2020: 556 configure: test for, use GNU C visibility for SO build! 557 55810/18/2020: 559 API cleanup 560 include/snotypes.h: moved LOAD_PROTO here (avoid internal use of load.h) 561 include/load.h: moved LOAD_PROTO 562 define/use SNOLOAD_API instead of SNOEXP 563 look at SNOLOAD_API_PROVIDER instead of lack of DYNAMIC 564 include/handle.h: use SNOLOAD_API 565 lib/break.c: use pmlret_t, remove static 566 lib/init.c: update include comments 567 lib/loadx.c, pml.c: remove load.h 568 lib/{bsd,dummy,vms,hpux}/load.c: trim includes, use const 569 lib/snolib/[gr]etstring.c: SNOLOAD_API_PROVIDER, SNOLOAD_API 570 mod_*.c(pp): include comments, config.h 571 57210/18/2020: 573 include/snobol4.h: SNOBOL4_API macro, noop if not PROVIDER && SHARED 574 main.c: use SNOBOL4_API 575 57610/18/2020: 577 lib/init.c: strdup -u argument 578 57910/18/2020: 580 more VAR declarations (only statics left are in VMS code?) 581 lib/init.c 582 lib/loadx.c 583 lib/generic/popen.c 584 lib/posix/dynamic.c 585 lib/snolib/handle.c 586 58710/17/2020: 588 include/handle.h: add sizes, reserved bytes 589 modules/stat/stat.c: st_atimensec predefined on NetBSD 9 590 add ST_BTIME 591 59210/17/2020: 593 gcc 9.3-win32 594 include/lib.h, lib/{msdos,vms,win32}/tty.c: tty_read 595 lib/win32/inetio_obj.c: inetio_open 596 59710/17/2020: 598 gcc 9.3 write-string warnings 599 main.c: ni_argv (crock) 600 include/io_obj.h: fname 601 include/stdio_obj.h: stdio_wrap {std,pipe,pty}io_open 602 lib/io.c: io_open_funcs 603 lib/stdio_obj.c: stdio_wrap, {std,pipe}io_open 604 lib/{bsd,win32}/ptyio_obj.c: ptyio_open 605 60610/17/2020: 607 More const char * 608 include/load.h: io_fname 609 include/snobol4.h: io_output_string (name) 610 lib/io.c: io_input_string (name), io_fname (EXPORT it) 611 61210/17/2020: 613 Clean compile with -Wwrite-string (const paranoia) 614 globals.h: snolib_base 615 include/lib.h: io_add_lib_dir, strjoin 616 include/snobol4.h: io_input_{file,string} 617 lib/init.c: p 618 lib/io.c: lots 619 lib/str.c: strjoin 620 62110/17/2020: 622 Another module go-round; instantiate module in support file 623 include/load.h: moved struct module to handle.h 624 include/handle.h: struct module here 625 wrapped support stuff in "ifdef MODULE_SUPPORT" 626 modules/LOTS: removed MODULE invocations 627 lib/snolib/mod_xxx: add module, use MODULE_INIT, MODULE_CLEANUP 628 62910/17/2020: 630 Clean up some g++ complaints 631 basic tests pass w/ -fpermissive & w/o -Werror 632 punted on modules (need to pick API for helpers) 633 configure: guard around setting _GNU_SOURCE 634 include/snotypes.h: cast DESCR SPEC sizes to int 635 include/stdio_obj.h: put enum last_direction at top level 636 include/syntab.h: const char * 637 include/io_obj.h: io_write take const char * 638 include/lib.h: io_lib_find take const char * 639 lib/date.c: cast int to enum 640 lib/io.c: io_write, ioo_write, io_lib_find, trypath take const char * 641 lib/pml.c: const char * 642 lib/bsd/inet6.c: true => yes 643 lib/snolib/serv.c: const char * 644 lib/win32/ptyio_obj.c: ptyio_write take const char * 645 lib/win32/inetio_obj.c: inetio_write take const char * 646 lib/stdio_obj.c: stdio_write take const char * 647 lib/auxil/bufio_obj.c: bufio_write take const char * 648 lib/auxil/memio_obj.c: memio_write take const char * 649 gendata.sno: output constant strings as char* not char[] 650 65110/17/2020: 652 Add cleanup routines 653 modules/dirs/dirs.c 654 modules/ffi/ffi.c 655 modules/sqlite3/sqlite3mod.c 656 modules/stcl/stcl.c (add new_obj too!) 657 Makefile2.m4: remove ancient dummy environ.o from OBJS 658 snolib/setuputil.sno: add setup.sources() 659 modules/com/com.cpp: add MODULE(), add new_obj (use new_handle2) 660 66110/16/2020: 662 First cut at releasing handles 663 configure: set MOD_SUPPORT in config.sno 664 config/win32/config.sno: set MOD_SUPPORT 665 include/h.h: define TLS as VAR 666 lib/snolib/handle.c: add new_handle2 (takes release, module ptr) 667 add handle_cleanup for cleanup 668 complain once if old new_handle called 669 include/load.h: add struct module, MODULE 670 modules/*/*.c: add MODULE invocations 671 modules/ndbm/ndbm.c: use new_handle2, add ndbm_cleanup 672 snolib/setuputil.sno: ugly mashing to include MOD_SUPPORT 673 67410/16/2020: 675 COPYING: update Copyright dates! 676 configure: more gcc doc quotes, include URLs 677 lib/posix/term.c: dup stderr so cleanup from DLL doesn't close fd 2 678 include/load.h: add pmlret_t, new_handle2 679 lib/snolib/LOTS: use (pm)lret_t 680 68110/15/2020: 682 lib/io.c, include/io_obj.h: move FL_INCLUDE to io_obj.h 683 68410/14/2020: 685 lib/io.c: add FL_INCLUDE flag, free include file file struct 686 68710/14/2020: 688 lib/io.c: use mstrdup in io_include (wrapper for io_include2) 689 lib/init.c: free snolib_{local,v{ers,lib,local}}, fclose termin 690 69110/14/2020: 692 Implement reg_cleanup for shared library cleanup 693 lib/init.c: add reg_cleanup, cleanup 694 lib/endex.c: call cleanup if SHARED 695 include/lib.h: add reg_cleanup, cleanup 696 lib/loadx.c: register for cleanup, unload all functions 697 69810/14/2020: 699 include/lib.h: add freeparm extern 700 include/macros.h: add FREEPARM 701 v311.sil: [PLB131] call FREEPARM 702 lib/init.c: add freeparm function 703 70410/14/2020: 705 lib/auxil/memio_obj.c: close: free buffer, return TRUE 706 70710/13/2020: 708 MSVC VAR support 709 include/h.h: include msvc/vars.h 710 include/msvc/vars.h: surprisingly reasonable/easy! 711 71210/13/2020: 713 Implement zeroing VAR variables in SHARED lib builds 714 data_init.c: include str.h, invoke ZERO_VARS to do the work 715 include/gcc/vars.h (new): put VAR into own section with gcc-like 716 compilers, include goo for OSX 717 include/h.h: include gcc/vars.h in SHARED build with "gcc" 718 lib/msdos/mstime.c: fix non-zero initializer 719 72010/13/2020: 721 lib/io.c, lib/stdio_obj.c: use globals.h 722 72310/12/2020: 724 Makefile: Solaris m4 doesn't have -I; not needed 725 72610/12/2020: 727 flush NO_STATIC_VARS, replace with VAR declaration 728 globals.h (new): declare all globals using VAR 729 include/h.h: default VAR to empty (could be TLS or __attr__(section)) 730 gendata.sno: output VAR 731 main.c: declare all globals 732 include/vars.h: removed 733 32 other .c files 734 73510/12/2020: 736 config/win32/mingw.mak: DLL/tests tested. 737 73810/11/2020: 739 configure: fix ICC check 740 74110/11/2020: 742 config/win32/mingw.mak: tweak to build snobol4.dll (not tested!) 743 config/win32/ntmsvc.mak: first swipe at DLL build (not run) 744 74510/11/2020: 746 turn off shell timing of genc.sno run 747 interferes with DYLD_LIBRARY_PATH on MacOS 10.15? 748 (was just looking for a reason to kill it, it only 749 mattered in ancient days when getrusage wasn't widely 750 available, and clock tick size was often a a result of 751 divination) 752 Turns out to be a feature (System Integrity Protection) 753 timing: comment out time 754 timing.sno: add, check CHECK_TIMING setting 755 75610/11/2020: 757 shared library cleanup 758 Makefile: use SO_CFLAGS instead of -fPIC 759 Makefile2.m4: use SNOBOL4_LDFLAGS 760 use SO_EXT from configure instead of .so 761 add rule to make tlib test 762 configure: put -rdynamic in SNOBOL4_LDFLAGS 763 define DYNAMIC in DL_CFLAGS 764 main.c: define SNOBOL4_PROVIDER for snobol4.h 765 include/load.h: honor DYNAMIC define 766 add iunit/xunit arg names 767 include/snobol4.h: check SNOBOL4_PROVIDER instead of DYNAMIC 768 remove many io functions (KISS), explain UNITx 769 lib/init.c: define SNOBOL4_PROVIDER for snobol4.h 770 77110/10/2020: 772 config/win32/ntmsvc.mak: missing a few $(SRCDIR)s 773 77410/10/2020: 775 lib/auxil/memio_obj.c: fix 776 tlib.c: test output to TERMINAL 777 main.c: add -b to non-interactive init 778 77910/10/2020: 780 Second round of shared library fun 781 Makefile: just define SHARED 782 Makefile2.m4: no MAINFLAGS 783 main.c: add snobol4_init, snobol4_init_ni, snobol4_run 784 ssnobol4.c: need stdio.h, h.h 785 config/win32/config.h: comment 786 include/lib.h: move stuff to snobol4.h 787 include/snobol4.h: stuff from lib.h 788 lib/endex.c: s/ENDEX_LONGJMP/SHARED/ 789 lib/init.c: s/stdinc/std_includes/ 790 init_args takes interactive argument 791 create signal_init, call from io_init (instead of SIL INIT) 792 lib/io.c: s/MEM_IO/SHARED/ 793 fix io_memfile 794 EXPORT io_input_string 795 tlib.c (new): demo/test 796 79710/10/2020: 798 Experiment to build libsnobol4.so 799 No lines of code changed! 800 Makefile: rules to make so/Makefile2 (creates private config.m4) 801 runs it to make shared_library 802 Makefile2.m4: split out rule (run in submake) for build.o 803 added rules to make shared library, ssnobol4 executable using it 804 added missing $(SRCDIR): MYCPPFLAGS, top level files 805 configure: add missing $(SRCDIR) prefixes 806 ssnobol4.c: one line main program to invoke shared library! 807 80810/10/2020: 809 lib/snolib/handle.c: hand out handle numbers sequentially 810 81110/10/2020: 812 lib/posix/memio_obj.c: memio_open using POSIX fmemopen 813 include/io_obj.h, lib/auxil/memio_obj.c: make memio_open take dir 814 lib/io.c: pass dir to memio_open, fix some comments 815 81610/8/2020: 817 lib/djgpp/osinit.c: add export of relstring 818 81910/8/2020: 820 configure: note ILP32, funny programming models 821 82210/8/2020: 823 snolib/sdb.sno: add SDB.RETVAL (can't concatenate DATA types) 824 82510/8/2020: 826 test/tests.in: add factor.sno, alis.sno 827 test/factor.{sno,ref}: from green book (via DEC-10,VAX ports) 828 test/alis.{sno,ref}: from green book (via DEC-10 port) 829 Execution time in green book was 5159ms 830 time on 2017 vintage Intel i5 was 2.429ms (2124x faster) 831 83210/8/2020: 833 fixes for OpenIndiana (illumos/OpenSolaris 11) 834 configure: change HAVE_ to NEED_ 835 check if can use lib/posix/pty.c 836 add CLOSEFROM_IN_STDLIB_H 837 use config/check for finite 838 config/win32/config.h: update 839 lib/posix/pty.c (new): forkpty from FreeBSD 840 include/libpty.h (new): forkpty prototype 841 Makefile2.m4: add rule for pty.o 842 include/lib.h: use NEED_ defines 843 lib/init.c: use NEED_GETOPT_EXTERNS define 844 lib/bsd/ptyio_obj.c: use CLOSEFROM_IN_STDLIB_H 845 84610/7/2020: 847 config/win32/config.h: add NTDDI_VERSION and _WIN32_WINNT again 848 lib/bsd/inet6.c: moved _WIN32_WINNT 849 lib/win32/ptyio_obj.c: moved NTDDI_VERSION and _WIN32_WINNT again 850 85110/7/2020: 852 configure: define (s)size_t if needed 853 config/win32/config.h: use WS2 socklen_t 854 85510/7/2020: 856 config/win32/{ntmsvc,mingw}.mak: winsock ipv6 comment 857 configure: fix readline module 858 include/macros.h: convert MOVBLK from bcopy to memmove 859 lib/{io,str}.c lib/ansi/sp{cint,real}.c lib/bsd/inet(6).c 860 lib/c99/spcint.c lib/generic/sp{cint,real}.c 861 lib/snolib/getstring.c lib/win32/inet.c: 862 convert bcopy to memcpy 863 86410/6/2020: 865 lib/win32/execute.c: Windows runtime implements execl 866 config/win32/{ntmsvc,mingw}.mak: use lib/win32/execute.c 867 86810/6/2020: 869 v311.sil: [PLB130] implement handling for type "M" 870 (malloc'ed linked string) in LNKFNC. 871 Calls relstring after variable generated. 872 include/lib.h: add relstring 873 include/macros.h: RELSTRING wrapper for relstring 874 include/load.h: add RETSTR2_FREE, RETSTR_FREE: call retstring_free 875 add extern/export for retstring_free 876 lib/retstring.c: flush static retbuf[len] vars: 877 add retstring_free which returns string via type "M" 878 retstring also returns via type "M" (unless RETSTRING_STATIC) 879 add relstring function called back on type "M" after interning 880 include/vars.h: flush retbuf[len] 881 88210/5/2020: 883 lib/{io,stdio_obj}.c: try pulling ^C handling down 884 removed ioo_clearerr -- flush?? 885 88610/5/2020: 887 config/win32/config.h: always define HAVE_FSEEKO 888 88910/4/2020: 890 config/win32/mingw.mak: use windres to compile manifest.rc 891 take TOOLCHAIN prefix 892 config/win32/ntmsvc.mak: use rc to compile manifest.rc 893 config/win32/manifest.rc (new) 894 Manifest file necessary to get Windows version 895 (upto latest version binary manifested for) 896 config/win32/linux-mingw.sh: pass TOOLCHAIN 897 lib/win32/sys.c: restore build, server, add back break, ansify 898 lib/bsd/dynamic.c: ansify 899 90010/4/2020: 901 configure: just set _GNU_SOURCE if glibc detected 902 modules/ffi/ffi.c: remove _GNU_SOURCE __USE_GNU 903 parms.h: move config.h back to top 904 parms.h, include/macros.h: move ieeefp.h include to parms.h 905 90610/3/2020: 907 configure: remove --force-memmove from help 908 move module support checks together 909 fix -Werror= for gcc 4.1.2 910 set {NDBM,TIME,RANDOM}_CFLAGS in config.sno 911 fix getrusage 912 removed clock_gettime for runtime (user+sys) 913 pull glibc check up, set _GNU_SOURCE if found 914 config/check: honor CHECK_OUT 915 CHANGES: update, organize 916 modules/ndbm/setup.sno: honor NDBM_CFLAGS 917 modules/random/setup.sno: honor RANDOM_CFLAGS 918 modules/time/setup.sno: honor TIME_CFLAGS 919 92010/2/2020: 921 configure: --without-modules 922 92310/2/2020: 924 lib/win32/inet.c: VERY last file to ansify? 925 (leaving ancient dummy files) 926 92710/2/2020: 928 Make configure fussier about checking for functions 929 configure: 930 If gcc/icc/clang set -Werror -Wimplicit-function-declartion 931 Fix glibc check for Ubuntu 932 Fix glibc 2.1 check (not to hop on 2.11) 933 93410/2/2020: 935 Makefile2.m4 configure pml.h: 936 cleanup/simplify: no more --force-pml, snolib.a, NO_PML_X 937 removed: lib/{bsd,generic,posix,win32}/sleep.c 938 93910/2/2020: 940 more ansification! 941 data_init.c 942 gensyn.sno 943 include/snotypes.h 944 lib/init.c 945 lib/io.c 946 lib/ordvst.c 947 lib/realst.c 948 lib/ansi/spreal.c 949 lib/auxil/getopt.c 950 lib/bsd/inet.c 951 lib/win32/inetio_obj.c 952 lib/win32/ptyio_obj.c 953 95410/1/2020: 955 lib/bsd/inet6.c: ansify 956 lib/win32/inetio_obj.c: turn off SO_OPENTYPE (added 1999/05/02!) 957 add comments 958 95910/1/2020: 960 configure: fix memmove test, put first 961 include/str.h: guard all function redefines 962 96310/1/2020: 964 yet ANOTHER bash at load 965 include/lib.h: os_unload_function, stash ptr to os_find_symbol 966 lib/loadx.c: call os_unload function with stash ptr from os_find_symbol 967 lib/{bsd,dummy,hpux,next,unix98,vms,win32}/load.c: rake again 968 bsd no longer keeps function list 969 97010/1/2020: 971 config/win32/mingw.mak: add IMPLIB variable 972 9739/30/2020: 974 time module: make TV_USEC int again, add TV_NSEC! 975 9769/30/2020: 977 one more bash at load 978 lib/loadx.c: maintain lib & func structs 979 include/lib.h: os_(un)load_library, os_find_symbol 980 lib/{bsd,dummy,hpux,next,unix98,vms,win32}/load.c: rake 981 9829/30/2020: 983 new config/makerulesdep 984 config/win32/mingw.mak: use makerulesdep to generate rules(!!) 985 9869/30/2020: 987 configure: use -MM for dependency generation 988 9899/29/2020: 990 mingw attempt to get fractional seconds (failed) 991 config/win32/config.h: use timspec_get w/ MSVC 992 getpid() in unistd.h on mingw 993 in process.h on msvc 994 getopt() in unistd.h on mingw 995 config/win32/linux-mingw.sh: try using -lpthread 996 modules/{time,random}/setup.sno: ldflags from config.sno 997 9989/29/2020: 999 HAVE_CLOCK_GETTIME_REALTIME 1000 configure 1001 modules/time/time.c 1002 modules/random/random.c 1003 10049/29/2020: 1005 Final(?) pml_find cleanup 1006 include/load.h 1007 lib/hpux/load.c 1008 lib/win32/load.c 1009 10109/28/2020: 1011 configure: detect clock_gettime(CLOCK_REALTIME,&ts) 1012 and timespec_get(&ts, TIME_UTC) 1013 modules/random/random.c, modules/time/time.c: 1014 use timespec (need a .h file to paper it over) 1015 GETTIMEOFDAY TV_USEC can be a REAL! 1016 10179/28/2020: 1018 config/win32/mingw.mak: improve module builds 1019 10209/28/2020: 1021 config/djgpp/Makefile: always include loadx.o 1022 10239/28/2020: 1024 ansify next dir (one file, for a (hopefully) dead interface) 1025 lib/next/load.c: ansify, convert to os_load 1026 Makefile2.m4: always include loadx.o 1027 configure: never need to add loadx.o 1028 10299/28/2020: 1030 ansify hpux dir (one file, for a (hopefully) dead interface) 1031 lib/hpux/load.c: ansify, convert to os_load 1032 10339/28/2020: 1034 ansify vms(!) files, convert to os_load 1035 config/vms/descrip.mms: add loadx 1036 lib/vms/*.c: convert to ansi, os_load 1037 10389/28/2020: 1039 Cross compile for Windows/MINGW under Linux 1040 NOTE!!! Binaries not tested. Will have funny CC name! 1041 (new) config/win32/linux-mingw.sh 1042 config/win32/mingw.mak: add overrides for cross-compile 1043 lib/win32/ptyio_obj.c, configure: 1044 moved cygwin WIN32_WINNT, NTDDI_VERSION defines 1045 10469/28/2020: 1047 snolib/setup.sno: prefetch HOST vars 1048 (allow override by config.sno) 1049 modules/*/setup.sno: remove unneeded setup.sno include 1050 10519/28/2020: 1052 timing: add /etc/os-release (for arch) 1053 10549/27/2020: 1055 doc/snobol4.1.pea: add SNOBOL4UNBUFFERED 1056 10579/27/2020: 1058 CHANGES: update with changes since 2.1.6 1059 10609/27/2020: 1061 configure: install cygwin libsnobol4.a in a versioned dir 1062 10639/27/2020: 1064 Clobber // comment by compiling with -stc=c90 1065 lib/bsd/inet6.c 1066 include/io_obj.h 1067 lib/bsd/ptyio_obj.c 1068 10699/27/2020: 1070 Remove old cygwin COM crockery 1071 config/win32/config.h 1072 modules/com/com.cpp 1073 configure 1074 10759/27/2020: 1076 First pass at ANSIfication 1077 Assumes all systems have string.h, stdlib.h 1078 Too many files to name. 1079 10809/26/2020: 1081 modules/stat/funcs.sno: missing comment chars!!!! 1082 10839/26/2020: 1084 Make cygwin w/ gcc 10 happy: 1085 configure: add HAVE_GETOPT[_EXTERNS] 1086 include/lib.h: add getopt() 1087 lib/init.c: honor HAVE_GETOPT_EXTERNS, remove getopt() 1088 modules/time/time.c: define magic for strptime, tm_gmtoff 1089 10909/26/2020: 1091 lib/io.c: FL_KEEPEOL, fix io_mkfile2 to preseve flags. 1092 include/io_obj.h, lib/io.c, lib/stdio_obj.c: FL_KEEPEOL 1093 10949/26/2020: 1095 doc/snobol4io.1.pea: update for 2.2, add tcp/udp flags. 1096 10979/26/2020: 1098 mingw compile cleanup (under Linux!) 1099 config/win32/mingw.mak: enable warnings, add depend, clean 1100 config/win32/config.h: wrap fseeko/ftello in ifndef __MINGW32__ 1101 add HAVE_STRFTIME 1102 lib/io.c: use SIGINT_EOF_CHECK instead of _MSC_VER 1103 lib/win32/sys.c: quiet DWORD formatting complaints 1104 lib/win32/inet.c: caught bindresvport usage error 1105 11069/26/2020: 1107 timing: check for systeminfo.exe! 1108 modules/random/random.c: use GETPID_IN_PROCESS_H 1109 expect getpid() to be available!! 1110 11119/26/2020: 1112 bufio/ptyio cleanup: 1113 include/bufio_obj.h: comments 1114 lib/auxil/bufio_obj.c: read_raw == 0 no longer EOF 1115 lib/win32/inetio_obj.c: read_raw return -1 on EOF 1116 lib/win32/ptyio_obj.c: flush flags, free buffer 1117 11189/25/2020: 1119 configure: comments for debugging win32/ptyio 1120 lib/auxil/bufio_obj.c: DEBUG_BUFIO_{READ_RAW,GETLINE} 1121 lib/win32/ptyio_obj.c: working? 1122 timing: look for smbios on Solaris 1123 11249/24/2020: 1125 lib/auxil/bufio_obj.c: fix memory corruption 1126 lib/win32/ptyio_obj.c: version with threads (broken) 1127 11289/22/2020: 1129 bsdtsort.c lib/{io,realst,str}.c lib/bsd/inet[6].c 1130 lib/snolib/serv.c lib/win32/{exists,inet}.c 1131 modules/ndbm/sdbm/dbe.c: 1132 cast ctype args to unsigned char 1133 11349/21/2020: 1135 Cleanup: 1136 configure: detect getline, or use auxil version 1137 fix missing g++ test under cygwin 1138 Makefile2.m4: auxil/getline.c (if needed) 1139 include/lib.h: add getline (if needed) 1140 lib/auxil/getline.c: fix! 1141 lib/win32/{inet,pty}io_obj.c: s/XXXio_read /XXXio_getline / 1142 config/win32/{ntmsvc,mingw}.mak: use auxil/getline.c 1143 config/djgpp/Makefile: use auxil/getline.c 1144 11459/21/2020: 1146 Another I/O Overhaul: Remove record length limits from text I/O. 1147 v311.sil: [PLB129] Add VLRECL (variable length record length(!)) 1148 as default/TERMINAL input record length. io_read will 1149 poke address of malloc'ed buffer into IOSP, and must 1150 generate variable (and copy) each line. 1151 config/win32/config.h: add SIGINT_EOF_CHECK 1152 include/io_obj.h: add linebuf, linebufsize, io_getline 1153 removed io_read. Update MSVC comments. 1154 Use C99 designated initializers when detected available. 1155 Add comments for inet_parse 1156 include/lib.h: add names/comments for tty_mode, tty_read args 1157 include/units.h: add NUNITS, comments 1158 lib/io.c: moved NUNITS to units.h 1159 add, use ioo_getline; remove ioo_read 1160 io_close frees io_linebuf 1161 use SIGINT_EOF_CHECK define 1162 call ioo_read_raw directly for FL_BINARY read 1163 io_openi: issue warning if recl given outside binary mode 1164 lib/stdio_obj.c: remove stdio_read; add stdio_getline, stdio_read_setup 1165 remove direct read/write/lseek for FL_UNBUF 1166 use setvbuf _IONBF for FL_UNBUF 1167 replace pipeio_read NULL define w/ pipeio_getline 1168 lib/auxil/bufio_obj.c: replace bufio_read w/ bufio_getline 1169 remove abort from bufio_write; remove bufio_read_raw 1170 lib/auxil/memio_obj.c: memio_seek call SUPER.io_seek to invalidate buf 1171 if opened in FL_APPEND(!!), preset pos to len 1172 lib/bsd/ptyio_obj.c: replace ptyio_read w/ ptyio_getline 1173 lib/generic/popen.c: retuen FILE pointer!!! 1174 lib/vms/tty.c: add ttyio_obj comment 1175 snolib/http.sno: add HTTP.MODE argument to HTTP.OPEN 1176 test/longrec.ref: include full record!!! 1177 test/tests.in: obsolete breakline.sno, k.sno tests!!! 1178 (new) lib/auxil/getline.c: for them that don't 1179 11809/19/2020: 1181 config/djgpp/config.h: add sock_t 1182 11839/19/2020: 1184 Conditionally ansify for MSVC: 1185 lib/init.c: SIGFUNC_ARG[_DECL] 1186 lib/ordvst.c: ordvst_cmp 1187 11889/19/2020: 1189 include/io_obj.h: default io_off_t 1190 lib/io.c, lib/stdio_obj.c, lib/auxil/memio_obj.c: use io_off_t 1191 config/win32/config.h: define io_off_t 1192 11939/19/2020: 1194 lib/win32/mstime.c: fix(?) HIGHMS 1195 config/win32/config.h: clean up(?) 1196 lib/auxil/memio.h: use bufio 1197 config/win32/ntmsvc.mak: moved BITFIELDS_SAME_TYPE to win32/config.h 1198 11999/16/2020: 1200 configure: fix for ptyio_obj.c 1201 cleanup new file headers 1202 12039/16/2020: 1204 include/io_obj.h: make nomatch extern 1205 lib/io.c: declare nomatch 1206 12079/16/2020: 1208 lib/io_stdio.c: handle line breaking for full-record size lines 1209 new: test/k.{in,sno} 1210 12119/16/2020: 1212 Clean compilation under MINGW w/ WS2, WS1, or NOTA 1213 Conditionalize ptyio as well 1214 config/win32/config.h 1215 config/win32/{mingw,ntmsvc}.mak 1216 lib/io.c 1217 lib/init.c 1218 lib/stdio_obj.c 1219 lib/bsd/inet6.c 1220 lib/dummy/inet.c 1221 lib/snolib/delete.c 1222 lib/auxil/bindresvport.c 1223 lib/win32/{exists,inet,inetio_obj,ptyio_obj}.c 1224 12259/15/2020: 1226 renamed all/pty.c to all/ptyio_obj.c 1227 split win32/inetio_obj.c from win32/inet.c 1228 Begin WS2 conditionalization 1229 1230 include/inet.h: add close_socket, SETSOCKOPT_ARG_CAST 1231 config/win32/config.h: remove HAVE_WINSOCK_H 1232 config/win32/ntmsvc.mak: add WINSOCK conditionals 1233 lib/win32/ptyio_obj.c: dynamic lookup of C{reate,lose}PseudoConsole 1234 lib/endex.c: need inet.h for inet_cleanup 1235 lib/auxil/bindresvport.c: conditionalize for WS2 1236 lib/io.c: remove ISOPEN 1237 lib/bsd/inet6.c: start of WS2 support 1238 12399/14/2020: 1240 config/djgpp/Makefile: use gmake ifdef 1241 lib/win32/inet.c: refactoring, use inet.h 1242 config/win32/config.h: add sock_t, remove isnan 1243 include/lib.h: move {tc,ud}p_socket, flags to inet.h 1244 include/inet.h (new) 1245 include/vars.h: rename wsock_init to wsock_init_done 1246 lib/io.c: use inet.h, silence strncpy complaints w/ memcpy 1247 lib/stdio_obj.c: use inet.h 1248 lib/bsd/inet.c: use inet.h 1249 lib/bsd/inet6.c: use inet.h, sock_t, remove inet_close 1250 lib/dummy/inet.c: remove inet_close, use inet.h 1251 12529/14/2020: 1253 modules: add .cvsignore files 1254 doc: update .cvsignore 1255 test: add .cvsignore 1256 12579/14/2020: 1258 lib/auxil.c/bufio_obj.c: fully populate methods 1259 (io_write and io_read raw print message and abort) 1260 io_close frees buffer 1261 do eof tracking, add MINBUFLEN 1262 include/bufio_obj.h: add eof member 1263 include/io_obj.h: add io_name to io_ops, MAKE_OPS for error messages 1264 lib/win32/inet.c: remove eof (now handled in bufio) and many methods 1265 call bufio close 1266 lib/win32/pty.c: convert to bufio, add command, make command_line 1267 call bufio close 1268 12699/13/2020: 1270 Windows compilation fixes. inetio seems to be working! 1271 Try updating djgpp/Makefile 1272 12739/13/2020: 1274 MSVC doesn't like io.h, rename to io_obj.h 1275 12769/13/2020: 1277 Another hack attack (or three): 1278 lib/init.c: Implement -U option, SNOBOL4UNBUFFERED 1279 doc/snobol4cmd.1.pea: Document -U SNOBOL4UNBUFFERED 1280 include/stdio_obj.h: stdio_wrap takes path 1281 lib/stdio_obj.c: honor unbuffer_all, 1282 have stdio_wrap take path 1283 lib/io.c: add inetio_open, pass path to stdio_wrap 1284 lib/bsd/pty.c: pass path to stdio_wrap 1285 include/lib.h: convert {tcp,udp}_open to _socket, remove inet_close 1286 lib/bsd/inet(6).c: convert {tcp,udp}_open to ..._socket 1287 lib/dummy/inet.c: convert {tcp,udp}_open to ..._socket 1288 lib/win32/inet.c: implement as inetio_open (io_obj provider) 1289 include/io.h: add inetio_open 1290 lib/auxil/memio_obj.c: cleanup header comments 1291 12929/13/2020: 1293 LOOOONG overdue OO refactoring of I/O 1294 (lamented as badly needed & last attempted in 2002) 1295 Makefile2.m4: add FISATTY, STDIO_OBJ, fix PTY_C 1296 config/win32/config.h: fix isnan, fake ftello/fseeko, add ssize_t 1297 include/lib.h: fisatty no longer takes fname 1298 lib/io.c: reduced by 20% (chars) 18% (lines) 1299 lib/bsd/pty.c: convert from forkexecpty to io_obj 1300 lib/bsd/tty.c: removed fisatty 1301 lib/dummy/pty.c: convert from forkexecpty to io_obj 1302 lib/dummy/tty.c: remove fname arg from fisatty 1303 lib/msdos/tty.c: remove fname arg from fisatty 1304 lib/posix/tty.c: remove fisatty 1305 lib/vms/tty.c: remove fname arg from fisatty 1306 lib/win32/tty.c: remove fname arg from fisatty 1307 new: 1308 include/io.h: OO base class/API 1309 lib/stdio_obj.c include/stdio_obj.h: most I/O code here 1310 lib/auxil/bufio_obj.c include/bufio_obj.h: helper for reading lines 1311 lib/auxil/memio_obj.c: memory based I/O w/o fmemopen 1312 lib/generic/fisatty.c: generic code moved from lib/many/tty.c 1313 lib/win32/pty.c: compiles, not tested 1314 13159/11/2020: 1316 lib/io.c: expand mode storage, add comments 1317 lib/vms/osopen.c: fix /dev/null 1318 13198/20/2020: 1320 new: lib/{bsd,dummy}/pty.c 1321 include/lib.h: add forkexecpty, waitpty 1322 lib/io.c: use forkexecpty, waitpty 1323 config/win32/{mingw,ntmsvc}.mak 1324 configure: add PTY_C=lib/bsd/pty.c 1325 Makefile2.m4: add PTY_C=lib/dummy/pty.c 1326 13278/17/2020: 1328 man page fixes 1329 configure: move strftime test 1330 genc.sno: handle RCALL single return label with if 1331 13328/13/2020: 1333 sdb.sh: handle lack of /tmp (Android) 1334 13358/12/2020: 1336 lib/snolib/serv.c: try to quell gcc9 truncation complaint 1337 13388/11/2020: 1339 configure: check for strftime, set HAVE_STRFTIME 1340 lib/date.c: use HAVE_STRFTIME -- reduce gcc space complaints 1341 modules/time/time.c: use HAVE_STRFTIME 1342 lib/snolib/host.c: enlarge buffer to make gcc happy 1343 13448/11/2020: 1345 Cleanup for Android: 1346 timing: search PATH for getprop 1347 config/check: check for /tmp (Android) 1348 configure: check for closefrom 1349 try checking for libncursesw for readline 1350 include/lib.h: add closefrom, getdtablesize 1351 lib/bsd/closefrom.c: closefrom using getdtablesize 1352 lib/posix/getdtablesize.c: getdtablesize using sysconf 1353 lib/dummy/getdtablesize.c: dummy getdtablesize 1354 Makefile2.m4: add closefrom.o getdtablesize.o rules 1355 13568/10/2020: 1357 timing: add stuff for version, hw & clock on Android 1358 1359**************** release 2.1.6 (CVS tag REL_2_1_6) 1360 13618/9/2020: 1362 configure: update for version 2.1.6 1363 13648/8/2020: 1365 tests/{tests.in,setexit7.{sno,ref}}: add &FATALLIMIT test 1366 13678/8/2020: 1368 modules/ffi/funcs.sno: credit Fred Weigel in AUTHOR section 1369 13708/8/2020: 1371 v311.sil: [PLB128] add &FATALLIMIT 1372 enables trapping some otherwise fatal errors for sdb 1373 procs: new labels/functions for FATALLIMIT 1374 snolib/sdb.sno: use &FATALLIMIT to trap some fatal errors 1375 doc/snobol4error.1.pea: note trapable fatal errors! 1376 doc/snobol4ext.1.pea: remove "ERRTEXT can be traced" 1377 doc/snobol4key.1.pea: add &FATAL, &FATALLIMIT 1378 test/{a,diag1,diag2,dump}.ref: add &FATALLIMIT 1379 test/blocks/dump.ref: add &FATALLIMIT 1380 13817/28/2020: 1382 doc/sdb.1.pea: 1383 Add =break for bt/run 1384 Fix what description 1385 Add a bug (cannot trap fatal errors) 1386 13877/7/2020: 1388 pkg/win32/README.win32: add doc directory mention. 1389 13907/6/2020: 1391 INSTALL: update Windows info 1392 13937/4/2020: 1394 pkg/win32/README.win32: fix SNOLIB (was SNODIR) 1395 config/win32/ntmsvc.mak: runinstall 1396 13977/2/2020: 1398 doc/snobol4.1.pea: add ezio link 1399 1400**************** release 2.1.5 (CVS tag REL_2_1_5) 1401 14027/2/2020: 1403 configure: update for version 2.1.5 1404 14057/2/2020: 1406 More Win10 cleanup: make more batch scripts work! 1407 config/win32/ 1408 modules.bat: clean up, add readline 1409 format.bat: clean up 1410 ntmsvc.mak: remove snobol4.exp snolib4.lib 1411 lib/win32/sys.c: cleanup, again 1412 pkg/win32/ 1413 README.win32: s/zip/tar/ 1414 sdb.bat: fix, support run command 1415 timing.bat: run in temp dir; fix/cleanup; add systeminfo 1416 snolib/setuputil.sno: add win.msc clean command 1417 parms.h: move config.h include 1418 1419**************** release 2.1.4 (CVS tag REL_2_1_4) 1420 14217/1/2020: 1422 configure: update for version 2.1.4 1423 14247/1/2020: 1425 Updates for build on Windows 10: 1426 new pkg/win32/maketar.bat: make tarball 1427 removed: pkg/win32/makezip.sh 1428 config/win32/config.h: ifndef isnan 1429 config/win32/format.bat: create snopea.1.html 1430 config/win32/mingw.mak: add all, cpuid.exe 1431 config/win32/modules.bat: explicit snobol4.exe 1432 config/win32/ntmsvc.mak: add clean, tar 1433 lib/win32/sys.c: version 1434 lib/win32/tty.c: needs malloc.h (now available) on 64 bits 1435 modules/random/Makefile: fix INC, dependencies 1436 modules/random/random.c: fix typedefs, make bsd_random uint32_t 1437 pkg/win32/install.bat: comment out load.doc, use "call" 1438 snolib/setuputil.sno: remove destdir for win.msc install 1439 14406/28/2020: 1441 CHANGES, README: tiny tweaks 1442 TODO.soon: add doc/html/man ideas for setuputils 1443 1444**************** release 2.1.3 (CVS tag REL_2_1_3) 1445 14466/25/2020: 1447 configure: update for version 2.1.3 1448 14496/23/2020: 1450 doc/snopea.7.pea: tweak L format example 1451 1452**************** release 2.1.2 (CVS tag REL_2_1_2) 1453 14546/21/2020: 1455 configure: update for version 2.1.2 1456 14576/21/2020: 1458 Makefile2.m4: quote tab for INSTALL_SYSTEM 1459 (seen on cygwin) 1460 14616/21/2020: 1462 Makefile2.m4: install snobol4ezio.3 man page 1463 doc/Makefile: note generated list in two places! 1464 14656/21/2020: 1466 configure: test for g++ for cygwin COM module 1467 1468**************** release 2.1.1 (CVS tag REL_2_1_1) 1469 14706/20/2020: 1471 doc/Makefile: remove $(TXT) from $(ALL) 1472 nroff and/or -ms not always available! 1473 configure: update for version 2.1.1 1474 1475**************** release 2.1 (CVS tag REL_2_1) 1476 14776/20/2020: 1478 README, CHANGES, configure: update for version 2.1 1479 14806/20/2020: 1481 modules/stat/funcs.sno: add ST_TYPE_STR 1482 TODO.soon: update 1483 14846/20/2020: 1485 snolib/ezio.sno: improve snopea embedded documentation 1486 14876/9/2020: 1488 doc/snobol4io.1.pea: document 'E' and 'X' 1489 14906/8/2020: 1491 include/macros.h: Use S4_EXTERN on _NORET 1492 14936/7/2020: 1494 Implement I/O 'X' (eXclusive) and 'E' (closE on ExEc) 1495 depends on stdio support (FreeBSD 10, glibc 2.7) 1496 lib/io.c, lib/bsd/inet[6].c, lib/win32/inet.c, include/lib.h 1497 README: John Willis 1498 Update TODO.soon 1499 15006/7/2020: 1501 1000th version of History file!! 1502 new snolib/ezio.sno: easy to use I/O functions 1503 Makefile: make snobol4ezio manual pages 1504 doc/snobol4io.1.pea: reference snobol4ezio(3) man page 1505 15062/18/2020: 1507 doc/snobol4func.1.pea: note STOPTR extension 1508 doc/snobol4pea.7.pea: tweaks; add perlpodspec link 1509 15102/17/2020: 1511 modules/stcl/stcl.c: improve documentation 1512 15132/13/2020: 1514 doc/snobol4func.1.pea: formatting fix 1515 15162/8/2020: 1517 doc/snobol4.1.pea doc/snobol4op.1.pea: 1518 add unary operator table to snobol4op(1) 1519 Makefile2.m4: always do doc directory make 1520 15212/7/2020: 1522 Makefile2.m4: use GENERATED_DOCS_DOCDIR3 for installs 1523 v311.sil, globals, test/labelcode.{sno,ref}, test/tests.in, 1524 doc/snobol4func.1.pea: add LABELCODE function (ala SITBOL LABEL()) 1525 modules/time/time.c: quash glibc 2.20+ warning 1526 15272/6/2020 1528 doc/snobol4func.1.pea: more history corrections 1529 15302/4/2020 1531 lib/snolib/host.h: add snopea doc for snobol4host(3) 1532 doc/snobol4func.1.pea: reference snobol4host(3) 1533 doc/Makefile: commands to create snobol4host.3[.html] 1534 153502/02/2020!!! 1536 snolib/sdb.sno: add .sdb_history file 1537 need to keep history over "run" commands if nothing else! 1538 doc/sdb.1.pea: document .sdb_history, /tmp files 1539 154002/01/2020 1541 configure: try /usr/lib/tclConfig.sh as default TCONF 1542 154301/25/2020 1544 doc/snobol4func.1.pea: note more extensions from SPITBOL 360 1545 154601/24/2020 1547 configure: fix for build with libreadline 1548 doc/snobol4func.1.pea: update HOST() output! 1549 155001/24/2020 1551 Add run command! 1552 snolib/sdb.sno: add run command! 1553 sdb.sh: support run command via temporary file! 1554 doc/sdb.1.pea: add run command, /tmp file bug 1555 155601/21/2020 1557 FreeBSD 12: 1558 configure: check for readline.h in /usr/include/edit 1559 modules/readline/setup.sno: use READLINE_INCLUDE 1560 156101/12/2020 1562 modules/sqlite3/sqlite3dbm.sno: more doc fixes 1563 156411/22/2019 1565 modules/sqlite3/sqlite3dbm.sno: fix documentation 1566 156710/13/2019 1568 doc/snobol4blocks.1.pea: fix text 1569 1570 configure: check for C99 <stdint.h> 1571 modules/random/random.c: use HAVE_STDINT_H 1572 to help compilation on Solaris 5.7! 1573 reported by John Willis 1574 15758/2/2019 1576 timing: add lscpu 1577 15786/15/2019: 1579 modules/ffi/ffi.c: switch from <inttypes.h> (SUSv2) to <stdint.h> (C99) 1580 15813/22/2019 1582 modules/dirs/dirs.c: fix SEEKDIR doc text 1583 15843/6/2019 1585 cpuid.c: decode cpuid model number 1586 15871/22/2018 1588 modules/stat/funcs.sno: fix ATIMENS paste-o 1589 15901/7/2018 1591 timing: fix emerge command (thanks to Mateusz Grotek) 1592 159312/30/2017 1594 doc/sdb.1.pea: document .sdbinit 1595 159612/23/2017 1597 snolib/sdb.sno: make "s" mean "step" again 1598 prevent "source" loops 1599 160012/22/2017 1601 snolib/sdb.sno: add save command (and function) from start of run 1602 doc/sdb.1.pea: document "save" and "source" 1603 doc/snobol4.1.pea: mention BLOCKS/SNOBOL4B up top 1604 160512/21/2017 1606 doc/sdb.1.pea: document that "list" takes LABEL_OR_STATEMENT_NUMBER 1607 snolib/sdb.sno: add source command (it nests!) 1608 160911/19/2017: 1610 snolib/sdb.sno: start of work for "run" command 1611 Read commands from .sdbinit file 1612 Modifications to watch/break @NUMBER 1613 Start of "run" command (output commands to restore breakpoints) 1614 16159/7/2017: 1616 snolib/sdb.sno: add missing comma to SDB.TRAP.VARS 1617 pkg/win32/timing.bat: changes from 11/14/2016 1618 161911/18/2016: 1620 modules/ffi/ffi.c: fix RTLD_NEXT paste-o 1621 configure: fix help output tabbing 1622 162310/22/2016: 1624 configure, modules/readline/readline.sno 1625 Supply dummy READLINE() for sdb 1626 reported by many(?) 1627 162810/13/2016: 1629 doc/snobol4blocks.1.pea 1630 new URL for asa2pdf 1631 16327/1/2016: 1633 timing: /sys/class/dmi/id/{sys_vendor,product_name} 1634 16352/26/2016: 1636 doc/snobol4func.1.pea: fix DATE(2) description 1637 reported by Laurence G. Battin 1638 16392/23/2016: 1640 modules/ffi/ffi.c: handle no RTLD_NEXT (Cygwin) 1641 reported by Laurence G. Battin 1642 164311/29/2015: 1644 modules/ffi/ffi.c: fix FFI_DLSYM 1645 Fix submitted by Fred Weigel in February! 1646 doc/snobol4cmd.1.pea: Add -B 1647 doc/snobol4io.1.pea: Document 'K' 1648 164911/8/2015: 1650 doc/snopea.7.pea: add perlpod link 1651 16528/18/2015: 1653 lib/win32/sys.c: add Win8.1, Win10 1654 16558/4/2015: 1656 include/lib.h: add inet routines 1657 lib/io.c: implement experimental 'K' (breaK) flag for Phillip Thomas 1658 lib/win32/inet.c: support breakline 1659 test/tests.in: add breakline.sno 1660 test/breakline.{sno,ref}: breakline tests 1661 16624/7/2015: 1663 lib/break.c: allow breakpoint table expansion for Fred Weigel 1664 16654/6/2015: 1666 modules/random/random.c: kill warning for gcc 4.8.2 1667 History: fix 2015 dates! 1668 16693/31/2015: 1670 lib/io.c: check for NULL fp in io_print_str 1671 (reported by Fred Weigel) 1672 16733/30/2015: 1674 snolib/sdb.sno: create, use SDB.VALUE for what, args 1675 16761/12/2015: 1677 DJGPP updates (from Burkhard Meissner) 1678 config/djgpp/Makefile: remove module files, add loadx.o 1679 config/djgpp/config.h: add defines 1680 lib/djgpp/osinit.c: DXE_EXPORT (__dpmi_int) 1681 16821/11/2015: 1683 Makefile2.m4: NDBM_C typo (thanks to Burkhard Meissner) 1684 16851/10/2015: 1686 doc/snobol4key.1.pea: note Traceable keywords. 1687 16881/8/2015: 1689 doc/snobol4key.1.pea: fix snobol4error refs 1690 modules/readline/readline.c: add comma in SEE ALSO 1691 16921/6/2015: 1693 INSTALL: mention development packages 1694 configure: warn when falling back to sdbm 1695 fix "Using" 1696 check for sqlite3 amalgamation sources in modules/sqlite3 1697 16981/5/2015: 1699 configure: AIX flags & comments, add SNOLIB_LOCAL 1700 Makefile2.m4: use SNOLIB_LOCAL 1701 snolib/sdb.sno: FREEZE SDB.SCALAR 1702 17031/4/2015: 1704 snolib/sdb.sno: add SDB.SCALAR: 1705 table of datatypes safe to display 1706 lib/io.c: io_ecomp() -- check for NULL pointer 1707 test/{ndbm,random,sleep,time}.sno: use ../modules/... for includes 1708 configure: update to 2.0+ 1709 add missing quote 1710 doc/snobol4cmd.1.pea: update -I description 1711 modules/random/random.c, lib/io.c: try fixing icc warning 1712 configure: removed some ancient stuff, add icc support 1713 lib/snolib/host.[ch]: add HOST_CC_IS 1714 config/win32/config.h: add HOST_CC_IS 1715 Solaris fixes, thanks to Mark R Riordan: 1716 include/lib.h: add loadable_function_t for os_load() (SunCC warning) 1717 lib/{unix98,win32}/load.c: use loadable_function_t * 1718 test/run.sh: avoid ksh-ism (export VAR=var) 1719 Makefile: pass make spotless down to doc/Makefile 1720 doc/Makefile: add make spotless (remove porting.txt) 1721 17221/3/2015: 1723 lib/init.c: always add ".", before processing options 1724 doc/snobol4.1.pea: update search path description 1725 modules/stcl/stcl.c: remove debug printf 1726 17271/2/2015: 1728 v311.sil: another PCOMP! 1729 doc/snobol4io.1.pea: ``terminal'' 1730 test/base.{sno,ref} (new): test basename.sno 1731 test/tests.in: add base.sno 1732 Makefile2.m4: add snobol4op to GENERATED_DOCS_DOCDIR1 1733 doc/snobol4func.1.pea: fix typo 1734 1735**************** release 2.0 (CVS tag REL_2_0) 1736 17371/1/2015: 1738 configure: set SO_LD for Solaris/cc; quit if SO_LD not set 1739 fix SNOLIB= value 1740 override SNOLIB in RUNSETUP (problem seen by Phillip Thomas) 1741 update version to 2.0 1742 snolib/basename.sno: revised (idea thanks to Phillip Thomas) 1743 lib/init.c: move "." first in search path 1744 snolib/snopea.sno: output <p> before <ul>; htext; 1745 output endlist in 'para' 1746 doc/snobol4.1.pea: fix search list order, 1747 made "DIRECTORY SEARCH LIST" a section 1748 add more spacing in characters table 1749 snolib/setuputil.sno: use basename.sno 1750 fix windoze setuputil path 1751 README, COPYRIGHT, snolib/sdb.sno: update Copyright date 1752 175312/31/2014: 1754 README: update 1755 INSTALL: ran ispell 1756 configure: append -VERSION to DOC_DIR 1757 doc/snobol4blocks.1.pea: fix, add link 1758 lib/init.c: fix missing newline (thanks to Phillip Thomas) 1759 176012/30/2014: 1761 doc/snobol4.1.pea: add snobol4{readline,sqlite3dbm}(3) refs 1762 doc/snobol4func.1.pea: fontify! 1763 snolib/snopea.sno,doc/snopea.7.pea: add L<> 1764 doc/snobol4[blocks].1.pea: use L<> 1765 Makefile2.m4: remove modules/setuputil.sno 1766 (spotted by Jonathan Kaye, Harald Arnesen) 1767 1768*** 2.0-rc3 (tag REL_2_0_RC3) 1769 177012/30/2014: 1771 genc.sno: add INCDEC to generate ++/-- 1772 doc/snobol4func.1.pea: fill in remaining empty spots. 1773 README, CHANGES: update 1774 configure: update to 2.0-rc3 1775 177612/29/2014: 1777 README: update 1778 configure: fix bindresvport_sa detection on OpenBSD 5.6 1779 timing: grep for VBOX, bios0: in dmesg.boot 1780 doc/load.txt: add lret_t 1781 v311.sil: [PLB125] two more PCOMPs 1782 died when dynamic region straddled 2G line on OpenBSD!! 1783 modules/sqlite3/sqlite3dbm.sno: fix docs 1784 doc/{sdb,snobol4{blocks,cmd,ctrl,func}}.1.pea: ran ispell 1785 178612/28/2014: 1787 configure: check for TCL_VERSION 1788 remove test for HAVE_FSTAT 1789 INSTALL, CHANGES: update 1790 doc/snobol4op.1.pea (new) 1791 doc/snobol4blocks.1.pea: update 1792 doc/snobol4.1.pea: update for snobol4op(1) 1793 doc/Makefile: add snobol4op 1794 snolib/setuputil.sno: update support comment 1795 snolib/snopea.sno: force paragraph before table 1796 doc/snobol4io.1.pea: fix table, ran ispell 1797 179812/27/2014: 1799 snolib/setuputil.sno: win: install one file at a time, html files 1800 config/win32/modules.bat: add random, add -v 1801 config/win32/ntmsvc.mak: add docs, move -DBITFIELDS... back 1802 config/win32/format.bat: format .pea files 1803 config/win32/config.h: BITFIELDS_SAME_TYPE moved back to makefile 1804 pkg/win32/install.bat: install modules last, check if dirs exist 1805 install snopea.in as lib\snopeacmd.sno 1806 install snopea.bat 1807 pkg/win32/timing.bat: add -x 1808 pkg/win32/snopea.bat (new) 1809 lib/init.c: add -x to usage 1810 181112/26/2014: 1812 modules/ffi/ffi.c: add =ecode 1813 doc/snobol4.1.pea: fix snobol4stcl 1814 181512/25/2014: 1816 config/win32/mingw.mak: clean out old stuff, conditionalize sqlite 1817 config/win32/ntmsvc.mak: clean out more old stuff 1818 config/win32/borland.mak: clean out more old stuff 1819 config/win32/config.h: define HOST_SHARED_OBJ_SUBDIR 1820 pkg/win32/install.bat: fix 1821 modules/setuputil.sno: fix for windows install 1822 make.bat: pass %1 1823 Makefile2.m4,configure,doc/Makefile: moved setuputil.sno to snolib 1824 snolib/setuputil.sno: change path tests 1825 182612/24/2014: 1827 README, INSTALL: update 1828 config/win32/{mingw.mak,config.h}: add -shared-libgcc 1829 config/win32/ntmsvc.mak: if EXISTS 1830 config/modules.bat: add sqlite3 (test for sqlite3.c) 1831 modules/com/com.cpp: fix handle handling 1832 snolib/snopea.sno: don't need repl.sno 1833 modules/{dirs/dirs.c,fork/fork.c,ndbm/ndbm.c,readline/readline.c, 1834 sqlite3/sqlite3mod.c,stcl/stcl.c}: lret_t 1835 1836**** NOTE!! changed handle.h API/ABI!!! 1837 183812/23/2014: 1839 lib/init.c: create, use, export snolib_vers 1840 lib/snolib/host.[ch]: HOST_SNOLIB_VERS 1841 modules/setuputil.sno: use HOST_SNOLIB_VERS 1842 process -d and -v 1843 pkg/win32/install.bat: put snobol4.lib in %SNOVER% 1844 config/win32/{mingw,ntmsvc}.mak: kill cygwin config.{h,sno} 1845 configure: output INSTALL_SYSDEP on cygwin to install libsnobol4.a 1846 Makefile2.m4: use INSTALL_SYSDEP 1847 include/handle.h: make snohandle_t a descr 1848 add LA_HANDLE/RETHANDLE 1849 new_handle() takes table name 1850 fix handle lookup on 32 bit system 1851 lib/snolib/handle.c: return handles as EXTERN types 1852 new_handle() takes table name 1853 module/{dir/dirs.c,ffi/ffi.c,ndbm/ndm.c,sqlite3/sqlite3mod.c, 1854 stcl/stcl.c}: use LA_HANDLE/RETHANDLE 1855 pass table name to new_handle() 1856 module/ffi/funcs.sno: use unique to generate vars to hold handles 1857 lib/io.o: try fixing iNTEL C warnings (reported by Clem Cole) 1858 lib/auxil/bindresvport.c: musl libc broken (reported by Harald Arnesen) 1859 186012/22/2014: 1861 modules/setuputil.sno: wrap copy dest in quotes 1862 pkg/win32/install.bat: cleanup, set SNOLIB 1863 modules/stcl/stcl.c: one more try to get rid of warning! 1864 186512/21/2014: 1866 configure, Makefile2.m4: s/SNOLIB_VER/SNOLIB/ 1867 snolib/snopea.sno: tweak headers, links for snopea 1868 doc/snobol4.1.pea: ref snopea(1) & snopea(7) 1869 doc/snobol4func.1.pea: add entries for some standard functions! 1870 clean up (most) question marks about extensions 1871 modules/logic/funcs.sno: add missing =ecode 1872 doc/snobol4ctrl.1.pea: tweaks 1873 modules/dirs/dirs.c: use =item 1874 modules/logic/readline.c: add missing =ecode 1875 modules/setuputil.sno: honor DESTDIR 1876 implement install for win.msc 1877 Makefile: cleanup *_modules, add printenv 1878 Makefile2.m4: add printenv 1879 pkg/win32/install.bat: use copy /y & modules.bat install 1880 config/win32/modules.bat: take command argument 1881 snolib/{logic,ndbm,random,readline,stcl,time}.sno: removed 1882 188312/20/2014: 1884 snolib/snopea.sno: output .IP for empty =item 1885 use HOST_VERSION_DATE 1886 doc/snobol4io.1.pea: cleanup 1887 modules/setuputil.sno: update BUGS 1888 lib/snolib/host.[ch]: add HOST_VERSION_DATE 1889 1890*** 2.0-rc2 (tag REL_2_0_RC2) 1891 189212/20/2014: 1893 doc/snobol4key.1.pea: made it real. 1894 doc/snobol4ctrl.1.pea: made it real. 1895 doc/snobol4ext.1.pea: moved stuff to other pages. 1896 doc/snobol4error.1.pea: ref snobol4cmd(1), remove =break 1897 doc/snobol4func.1.pea: add first entries! 1898 doc/snobol4.1.pea: remove =break, moved stuff into snobol4io(1) 1899 modules/sprintf/sprintf.c: fix man page title line 1900 doc/snobol4io.1.pea: cleaned up. 1901 snolib/snopea.sno: force paragraph before =item 1902 configure: update version to 2.0-rc2 1903 190412/19/2014: 1905 modules/sqlite3/setup.sno: detect amalgamation sources 1906 modules/sqlite3/sqlite3mod.c (renamed) 1907 modules/setuputil.sno: add mingw, remove nologo 1908 config/win32/modules.bat: use %TOP% 1909 config/win32/config.h: cleanup 1910 config/win32/ntmsvc.mak: cleanup, removed module files 1911 config/win32/mingw.mak: removed PML files, make modules 1912 config/win32/snobol4.vcxproj: removed module files 1913 modules/stat/funcs.sno: fix comment/docs. 1914 pkg/win32/install.bat: update 1915 doc/snobol4.1.pea: snobol4func(1) ref 1916 191712/18/2014: 1918 config/win32/{config.h,ntmsvc.mak}: 1919 disable PML_{TIME,RANDOM,COM,NDBM} 1920 remove logic.obj, sleep.obj 1921 define HAVE_SDBM_H 1922 modules/stat/stat.c: ifdef st_atimensec 1923 config/win32/config.sno: fix sleep path, add sdbm files 1924 modules/setuputil.sno: /LIBPATH 1925 include/load.h: define lret_t (required in windows DLLs) 1926 modules/*/*.c: use lret_t 1927 Makefile2.m4: remove obsolete option for com.cpp 1928 configure: ditch HAVE_FILE_NSEC, tweak cygwin LDFLAGS 1929 output to config.sno for COM module 1930 modules/dirs/win32/dirent.[ch]: utilities for win32 1931 modules/com/com.cpp (moved from snolib/win32): add COM_DL 1932 modules/com/setup.sno (new) 1933 config/win32/config.sno: set DIRS_{INCLUDE,FILES} 1934 modules/dirs/setup.sno: use DIRS_{INCLUDE,FILES} 1935 config/win32/modules.bat (new) 1936 193712/17/2014: 1938 README, INSTALL: update for 2.0 1939 194012/16/2014: 1941 man page tweaks 1942 configure, Makefile2.m4: install HTML in $PREFIX/share/doc/snobol4 1943 194412/15/2014: 1945 modules/stcl/stcl.c: clean up warning (reported by Clem Cole) 1946 lib/snolib/{atan,exp,tan}.c: propogate REAL_ISFINITE (Clem again) 1947 1948*** 2.0-rc1 (tag REL_2_0_RC1) 1949 195012/14/2014: 1951 CHANGES: Updated 1952 configure: update version to 2.0-rc1 1953 195412/13/14! 1955 include/lib.h, lib/{init.c,io.c,snolib/host.[ch]}: 1956 HOST_SNO{LIB_{BASE,LOCAL,V{LIB,LOCAL}},PATH_DIR} 1957 configure: define SHARED_OBJ_SUBDIR 1958 lib/snolib/host.[ch]: HOST_SHARED_OBJ_SUBDIR 1959 modules/setuputil.sno: use HOST_{SHARED_OBJ_SUBDIR,LIB_V{LIB,LOCAL}} 1960 snolib/repl.sno: replace pattern w/ EVAL(expr) 1961 snolib/snopea.sno: crock to detect man pages, and turn into links! 1962 add =link and =anchor 1963 doc/snobol4.1.pea: use =link & =anchor 1964 196512/12/2014: 1966 configure: fix config.sno MAN3DIR 1967 Makefile: add M2TARGETS, timing.out, build_all 1968 Makefile2.m4: remove obsolete man files, add build_all 1969 revert to always timing on "make" 1970 test/bench.sno: tweak ending conditions 1971 197212/11/2014: 1973 doc/snobol4blocks.1.pea: fonts, cleanup 1974 snolib/snopea.sno: fix html \' 1975 modules/setuputil.sno: clean -- remove extras man pages 1976 install .sno & man files (extras too!) 1977 modules/*/Makefile: ../../snobol4, remove -b 1978 modules/sqlite3/sqlite3dbm.sno: rename SQL3DBM_ERRMSG, flush CLEARERR 1979 configure: output MAN3DIR in config.sno 1980 Makefile2.m4: use setup.sno install 1981 create local/shared 1982 Changed "dynload" to "shared" 1983 198412/10/2014: 1985 lib/init.c: usage: fix -b, add -N/-I 1986 doc/snobol4cmd.1.pea: add -N 1987 Makefile2.m4: install snobol4cmd.1 1988 snolib/sdb.sno: fix "info"; allow "ignore bkpt" 1989 use built-in INTEGER() 1990 doc/sdb.1.pea: document "ignore" change 1991 doc/snobol4{ctrl,func,key}.1.pea reference snobol4ext(1) 1992 199312/9/2014: 1994 Makefile2.m4: add snobol4{func,blocks,key,ctrl} 1995 doc/Makefile: add snobol4{func,blocks,key,ctrl} 1996 doc/snobol4func.1.pea (new): list of functions 1997 doc/snobol4blocks.1.pea (new): blocks extension 1998 doc/snobol4key.1.pea (new): list of keywords 1999 doc/snobol4ctrl.1.pea (new): list of keywords 2000 doc/snolib.3 (removed) 2001 doc/snolib.3.pea (new) 2002 200312/8/2014: 2004 doc/snobol4.1.pea: fixes 2005 Makefile: add rule for "with"; remove callgraph from DISP 2006 modules/ndbm/ndbm.c: tweak documentation 2007 200812/7/2014: 2009 snolib/snopea.sno: add missing escapes to html charpats 2010 doc/sdb.1.pea: clean up 2011 doc/snopea.7.pea: clean up 2012 doc/snobol4.1.pea split out snobol4cmd 2013 doc/snobol4cmd.1.pea split out of snobol4.1.pea 2014 201512/6/2014: 2016 snolib/snopea.sno: add =nitem, =table/=row/=etable 2017 put CSNOBOL4(B) version in headers 2018 output <body> & </body> 2019 doc/snopea.pea: document =nitem, =table/=row/=etable 2020 snopea.in: infer output format from output filename 2021 renamed doc/*.pea to doc/*.sect.pea *.sect.html 2022 doc/Makefile: explicit rules 2023 new: doc/snobol4.1.pea doc/snobol4ext.1.pea doc/snobol4io.1.pea 2024 removed old doc/snobol4.1 2025 moved lib/snolib/readline.c to modules/readline/ 2026 configure: make readline a module 2027 modules/readline/setup.sno (new) 2028 modules/readline/readline.c: add pea docs 2029 removed old doc/snobol4readline.3 2030 doc/Makefile: removed snobol4readline 2031 Makefile2.m4: adjust READLINE_C, remove an --format option 2032 203312/5/2014: 2034 Makefile: add callgraph to GENERATED 2035 doc/Makefile: use explicit rules 2036 GENERATED files depend on ../snobol4 2037 doc/snobol4.1: move error codes to snobol4error(1) 2038 doc/snobol4error.pea (new): from snobol4.1 2039 Makefile2.m4: install config.sno 2040 modules/sqlite3/{sqlite3.c,funcs.sno}: add pea docs 2041 v311.sil: Fix compilation withut BLOCKS: 2042 commented out unused R_R_N 2043 (nested .IFs don't work) 2044 snolib/snopea.sno: fix HTML =item formatting 2045 doc/man2pea.sno: char mapping; handle .br, .IP 2046 204712/4/2014: 2048 Makefile: {clean,build}_modules shorthands 2049 Makefile2.m4: add rule for snopea.7, move GENERATED_DOCS up 2050 add sdb.1 to GENERATED_DOCS 2051 add $(SNOPEA) shorthand 2052 sed BINDIR/VERS into snopea.in 2053 configure: output, use $(RUNSETUP) shorthand 2054 doc/Makefile: flush test, output snopea.7 as snopea-format.{html,ps,pdf} 2055 Add SNOPEA=, use -N 2056 make snopea-format.7 a symlink 2057 add txt, html to ALL 2058 modules/setuputil.sno: fix extras handling, check for =pea lines 2059 snolib/snopea.sno: cleanup html charpat, complain on open errors 2060 add subsect, new special chars 2061 doc/snopea.pea: add subsect, special characters 2062 doc/sdb.pea: snopea version of sdb man page 2063 doc/sdb.1 (deleted) 2064 doc/man2pea.sno: handle SS, TP 2065 snopea.in (was snopea) 2066 206712/3/2014: 2068 Makefile: clean up more generated doc files 2069 snopea, doc/snopea.pea, modules/LOTS: don't bold parens in man page refs 2070 snolib/snopea.sno, doc/snopea.pea: add =break 2071 modules/ndbm/ndbm.c: add pea docs 2072 modules/random/random.c: add pea docs 2073 modules/stcl/stcl.c: add pea docs 2074 modules/time/funcs.sno: add pea docs 2075 doc/snobol4{dbm,random,tcl,time}.3: deleted 2076 doc/Makefile: remove snobol4{dbm,random,tcl,time} 2077 Makefile2.m4: fix modules/snobol4setup.3.html 2078 remove snobol4{dbm,random,tcl,time}.3 2079 install snopea script 2080 install snopea.7 page 2081 configure: output MAN7DIR 2082 208312/2/2014: 2084 Makefile: config.m4 config.h config.sno version.h version: configure 2085 COPYRIGHT, README, snolib/sdb.sno: update copyright date, use utf 2086 208712/1/2014: 2088 snolib/snopea.sno: cleanup & add oline "command" 2089 doc/snobol4tcl.3: fix typo 2090 doc/man2pea.sno: comment 2091 209211/30/2014: 2093 doc/snobol4dbm.3: mention snobol4sqlite3dbm(3) 2094 doc/snobol4tcl.3: reference wish(1) man page 2095 doc/man2pea.sno: a start 2096 moved (copied & removed) files to modules/ 2097 snolib/{fork,logic,ndbm,random,sprintf,stcl,time}.c 2098 sdbm directory 2099 210011/29/2014: 2101 modules/setuputil.sno: process 'extras' w/ snopea 2102 modules/sqlite3/sqlite3dbm.sno: add snopea docs 2103 modules/sqlite3/setup.sno: add extras = sqlite3dbm.sno 2104 210511/27/2014: 2106 config/win32/config.sno (new) 2107 config/win32/{config.h,ntmsvc.mak}: tweakage for MSC 2108 modules/stat/stat.c: tweak for MSC 2109 configure: add HAVE_FILE_NSEC 2110 211111/26/2014: 2112 modules/sqlite3/{sqlite3dbm,testdbm}.sno: DBM interface, test 2113 modules/sqlite3/sqlite3.c: ifdef DEBUG 2114 211511/25/2014: 2116 many: replace =pod with =pea 2117 modules/logic/funcs.sno: add documentation 2118 Makefile2.m4: generated docs 2119 212011/23/2014: 2121 snopea, modules/dirs/dirs.c, modules/ffi/ffi.c, modules/stat/funcs.sno: 2122 use \- in man page header 2123 212411/21/2014: 2125 snolib/snopea.sno: disable hyphenation after .SH 2126 212711/20/2014: 2128 snolib/snopea.sno: implement character mappings 2129 doc/snopea.7: tweak 2130 snopea: use HOST_xxx constants 2131 213211/19/2014: 2133 doc/snobol4.1: document -b change, -x option 2134 doc/snobol4dbm.3: fix spelling 2135 doc/snopea.pea (new): snopea(7) man page 2136 doc/Makefile: add stuff for snopea(7) 2137 213811/18/2014: 2139 snopea: flush single letter opts, some renaming 2140 modules/setuputil.sno: make html man pages 2141 snolib/snopea.sno: </h1> 2142 configure: output MODULES_HTML MODULES_MAN 2143 Makefile2.m4: use MODULES_MAN 2144 214511/17/2014: 2146 snopea: add argument processing 2147 snolib/snopea.sno: add lsep for <dd>, fix html fonts 2148 214911/15/2014: 2150 lib/init.c: add -x to force banner 2151 timing: use -x 2152 lib/snolib/{fork,sprintf}.c: head1 -> head 2153 LOTS: replace =head1 w/ =sect 2154 snolib/snopea.sno: first cut at HTML output 2155 215611/13/2014: 2157 Makefile2.m4: install depends on modules/snobol4setup.3 2158 add rule for modules/snobol4setup.3 2159 install modules/snobol4setup.3 2160 install modules/*/*.3 2161 216211/12/2014: 2163 lib/init.c: no banner if source file on command line 2164 -b always cancels banner 2165 snopea: remove -b 2166 216711/11/2014: 2168 modules/ffi/{ffi.c,funcs.sno}: tweak doc 2169 snopea (new): program to run snopea 2170 217111/10/2014: 2172 snolib/snopea.sno: made into an include file 2173 modules/setuputil.sno: call snopea() if pod seen 2174 configure: use SNOPATH, add ../../snolib to setup.sno 2175 modules/ffi/ffi.c: more POD 2176 doc/Makefile: force old-style bolding (no escapes) 2177 turned off ps, pdf, html 2178 217911/9/2014: 2180 lib/snolib/{fork,sprintf}.c: add POD doc 2181 218211/8/2014: 2183 modules/setuputil.sno: add POD doc 2184 modules/dirs/dirs.c: fix documentation 2185 snolib/snopea.sno: use basename, add =bull, =code, =ecode 2186 snolib/basename.sno (new) 2187 218811/7/2014: 2189 snolib/snopea.sno (new): tiny "POD" formatter 2190 modules/setuputil.sno: add pre.sno, pass POD documentation 2191 first cut at msc commands 2192 modules/ffi/{ffi.c,funcs.sno}: add documentation 2193 modules/stat/funcs.sno: add documentation 2194 modules/stat/stat.c: add block device 2195 modules/dirs/dirs.c: add POD docs 2196 config/win32/config.h: more tweaking for mingw 2197 lib/win32/tty.c: include malloc.h under mingw 2198 219911/2/2014: 2200 modules/ffi/{ffi.c,funcs.sno,test.sno,test2.sno}: PREP takes one arg 2201 fix ffi.c for Linux 2202 modules/setuputil.sno: fix config.h check 2203 configure: fix cygwin --out-implib 2204 220511/1/2014: 2206 configure: tweak messages, add SO_XXX for Cygwin 2207 config/win32/config.h: fix CC collision 2208 config/win32/mingw.mak: define CC on command line 2209 modules/ffi/{ffi.c,setup.sno,test.sno,test2.sno}: FFI interface!! 2210 configure: detect ffi, try making libsnobol4export.a on cygwin 2211 config/win32/mingw.mak: try making libsnobol4export.a 2212 221310/22/2014: 2214 modules/sqlite3/sqlite3.c: fix typo, floating point tweaks 2215 221610/21/2014: 2217 main.c: display MODIFIED_BANNER if defined 2218 221910/20/2014: 2220 Makefile2.m4: snolib cleanup 2221 lib/snolib/fork.c: WAITPID cleanup 2222 lib/snolib/readline.c: add free() 2223 222410/19/2014: 2225 configure: add fork module 2226 auto-detect Tcl on MacOS 2227 lib/snolib/fork.c: add WAITPID() 2228 modules/fork/setup.sno: new 2229 223010/18/2014: 2231 Makefile2.m4: removed time.o sleep.o logic.o random.o sprintf.o 2232 from snolib.a 2233 configure: ADD_OBJS([logic.o random.o time.o sleep.o]) if --force-pml 2234 add sprintf module 2235 config/win32/config.h: first cut at MSC, Borland flags 2236 modules/sprintf/setup.sno: new 2237 223810/16/2014: 2239 modules/setuputil.sno: auto-detect distribution builds 2240 configure: flush dbuild 2241 test/run.sh: show search path 2242 lib/snolib/{delete,exit,getenv,host,ndbm, 2243 readline,rename,sprintf,stcl}.c: use mgetstring, free 2244 224510/16/2014: 2246 configure: check for timegm; fix missing "c"; add SETUP_SYS 2247 lib/snolib/time.c: add TIMEGM() 2248 lib/snolib/host.[ch]: add HOST_SETUP_SYS 2249 config/win32/config.h: alias for timegm, add HAVE_TIMEGM 2250 add SETUP_SYS, SO_LD, DL_LD 2251 modules/setuputil.sno: use HOST_OBJ_EXT, HOST_SETUP_SYS 2252 225310/14/2014: 2254 lib/snolib/ndbm.c: fix day one error in LOAD() comment 2255 (now being used to generate ndbm.sno)!! 2256 Misbehavior spotted by Rafal Sulejman 2257 225810/13/2014: 2259 Makefile: cleanup for modules directories 2260 add "with" as configure output 2261 remove configure dependancy 2262 (runs constantly when newer than with) 2263 Makefile2.m4: explictly pass -N to test/run.sh 2264 test/run.sh: remove -N (explicitly passed by Makefile2) 2265 v311.sil,procs: remove unused blocks code/functions 2266 bsdtsort.c: quiet clang 3.3 warnings 2267 configure: fix ndbm loadable w/ sdbm 2268 sdbm.c: save errno for dbm_error 2269 227010/12/2014: 2271 Makefile2.m4: install MODULES_{INCLUDE,LOADABLE} 2272 227310/11/2014: 2274 modules: dirs logic ndbm random sqlite3 stat stcl time 2275 (only a year after code was written!) 2276 too many changes to mention. 2277 -N option 2278 -INCLUDE no longer implicitly searches local dir (must be in path) 2279 Tested on FreeBSD 10.0, Ubuntu 12.04.05, MacOS 10.7.5 2280 228110/8/2014: 2282 Makefile2.m4: install handle.h 2283 configure: use -rdynamic on ELF systems; add -fPIC to SO_LDFLAGS 2284 22853/17/2014: 2286 configure: check for lstat(), define HAVE_LSTAT 2287 22882/22/2014: 2289 configure: check for isfinite(); define HAVE_ISFINITE 2290 include/macros.h: check HAVE_ISFINITE 2291 "finite" gives warning on MacOS 10.9 2292 (reported by Clem Cole) 2293 22941/18/2014: 2295 v311.sil: [PLB124] fix "FUNCTION" TRACE() 2296 (problem reported by Dani Richard) 2297 test/tests.in: add trfunc.sno 2298 test/trfunc.{sno,ref}: new: tests for TRACE 2299 23001/1/2014: 2301 configure: quiet warnings for "alignof" 2302 230312/24/2013: 2304 Makefile2.m4: install str.h 2305 configure: add OBJECT_EXT 2306 config/{win32,vms,djgpp}/config.h: add OBJECT_EXT 2307 lib/snolib/host.[ch]: add OBJECT_EXT, HOST_OBJ_EXT 2308 lib/snolib/{logic,random,time}.c: add LOAD() comments 2309 231012/22/2013: 2311 configure: switch to --without-blocks 2312 231311/9/2013: 2314 snolib/wrapper.sno: add INT32, INT64 2315 configure: use -fPIC 2316 231711/4/2013: 2318 pml.h: BREAKPOINT() was under ifdef PML_RANDOM 2319 232011/3/2013: 2321 Makefile2.m4: add INSTALL_BIN_FLAGS 2322 configure: use "check" for bindresvport[_sa]() 2323 clear INSTALL_BIN_FLAGS on MacOS 2324 add '-undefined dynamic_lookup' on MacOS 2325 lib/win32/com.cpp: fix a paste-o 2326 232710/28/2013: 2328 configure: fix manpath default display 2329 233010/27/2013: 2331 v311.sil: [PLB123] Add &COMPNO (ala SITBOL/SNOBOL4B) 2332 snolib/sdb.sno: use &COMPNO 2333 lib/io.c: flush unused variable 2334 233510/26/2013: 2336 v311.sil: [PLB122] Fix paste-o for single letter 'R' trace 2337 233810/22/2013: 2339 Merge from BR_1_5_PLUS_BLOCKS (see below) 2340 2341=== merged from BR_1_5_PLUS_BLOCKS 2342 234310/17/2013: 2344 v311.sil: [PLB121] Clean up PRINT/EJECT carriage control 2345 Implement ASCII Carriage Control if CC(unit) < 0 2346 lib/io.c: Implement ASCII Carriage Control if CC(unit) < 0 2347 add findfile() function; do multiple writes in fastpr 2348 {acm44[01],mts1{44,6[46]},reg,tree[12]}.ref: update 2349 235010/15/2013: 2351 v311.sil: [PLB119] fix BCHAR() -- was writing into const string 2352 clean up warning FORMATs, report file & line 2353 [PLB120] change DI_8 to DI_DSC for 64-bit systems! 2354 test/blocks/bc.{sno,ref}: test BCHAR 2355 test/blocks.in: add blocks/bc.sno 2356 235710/13/2013: 2358 test/blocks.in: tweak dump test 2359 test/blocks/dump.ref: update 2360 lib/io.c: supply missing argument to io_print_str()! 2361 236210/12/2013: 2363 test/blocks.in: blocks/mts16[246].sno 2364 blocks/mts16[246].{sno,ref} 2365 lib/str.c: remove divide from movblk2 2366 236710/11/2013: 2368 Working better! 2369 v311.sil: [PLB118] replace MOVBLK with MOVBLK2 in BLAND 2370 genc.sno: add MOVBLK2 2371 include/macros.h: add MOVBLK2 2372 include/lib.h: add movblk2 2373 lib/str.c: add movblk2 2374 test/blocks.in: blocks/{box,acm443a,mts145,tree1,tree2} 2375 test/test.in.sh: (new) take BASE from environment 2376 test/blocks/{box,mts14[35],tree[12]}.ref (new) 2377 test/blocks/{mts145,tree}.sno (new) 2378 237910/11/2013: 2380 On branch BR_1_5_PLUS_BLOCKS 2381 SNOBOL4B (SNOBOL4 with BLOCKS) thanks to Mike Alexander <mta@umich.edu> 2382 new: procs.blocks 2383 genc.sno: Make macros used by BLOCKS macros into functions. 2384 Add --with NAME flag, process .IF[E] NAME / .FI 2385 Add notes about clearing F&V from reading PDP-10 macros 2386 Read procs.blocks if --with BLOCKS selected 2387 BLOCKS macros: CYC IF{DEF,FIT,MERGE,PHY,REP,ST,CONT} 2388 MAX, MERGSP, NN, RELS, SWAP, TRL, FASTPR 2389 Makefile: add "with" 2390 bsdtsort.c: make hash unsigned, do rotate 2391 configure: add --with-blocks, write "with" file (if changed) 2392 gendata.sno: Add --with flag, process .IF NAME / .FI 2393 Process data defns before end of code (for BLOCKS) 2394 gensyn.sno: Add --with flag, process .IF NAME / .FI 2395 globals: add BLOCKS related globals 2396 main.c: change name to CSNOBOL4B under ifdef BLOCKS 2397 syntax.tbl: add blocks binary operator tables: BBIOPTB and BSBIPTB 2398 v311.sil: [BLOCKS] add BLOCKS code 2399 [PLB117] add -[NO]BLOCKS to dis/enable blocks operators 2400 lib.h: add io_fastpr(), mergsp() 2401 macros.h: renamed INSERT macro to X_INSERT; add FASTPR, MERGSP macros 2402 lib/init.c: add -B option to toggle blocks 2403 lib/io.c: io_printf(): add %A %L %V 2404 test/blocks.in: list of blocks tests 2405 test/test.{dump,err,genc,opt,reg,trace}.sh: handle test with dir name 2406 test/blocks/ (new) 2407 test/blocks/{ab,acm4{39,40,41,42,43,43a,43b}, 2408 block{0,0n,1,1b,1b}, 2409 box,dump,image,reg,tree 2410 mts14{2,3,4}.{sno,ref} 2411 2412==== end merge from BR_1_5_PLUS_BLOCKS 2413 241410/15/2013: 2415 configure: check double alignment; disable bitfields if strict 2416 (would pad descriptor to 16 bytes). 2417 241810/11/2013: 2419 tag TAG_1_5_PLUS 2420 branch BR_1_5_PLUS_BLOCKS 2421 242210/8/2013: 2423 make.bat, pkg/win32/{sdb,timing}.bat: 2424 wrap batch file variable expansions in double quotes 2425 replace NL with CRLF 2426 configure: check for ELF the same way on all BSD systems 2427 242810/6/2013: 2429 configure: check for BASEDIR/share/man (Reported by Mike Greenberg) 2430 243110/3/2013: 2432 timing: force display of /sys/devices/..../name path 2433 configure: add CFLAGS_LONGLONG 2434 243510/2/2013: 2436 configure: update to version 1.5+ 2437 243810/1/2013: 2439 config/win32/ntmsvc.mak: add SNOBOL4_C_CFLAGS 2440 pkg/win32/makezip.sh: make SNOBOL4 upper case 2441 configure: check for long long, output SIZEOF_{INT,REAL}_T 2442 include/macros.h: handle SIZEOF_INT_T != SIZEOF_REAL_T in DCMP 2443 lib/pair.c: include equ.h for DCMP() 2444 config/win32/config.h: add SIZEOF_{INT,REAL}_T 2445 2446**************** release 1.5 (CVS tag REL_1_5) 2447 244810/1/2013: 2449 configure: update version to 1.5 2450 24519/27/2013: 2452 conf/win32/config.h: comments on _WIN64 ifdef 2453 Makefile: took cpuid out of "make cleanmostly" 2454 remove *.exe in "make clean" 2455 make.bat: (new) got tired of typing makefile path for VS 2456 lib/snolib/random.c: forgo use of [s]size_t for VS 2457 add pragma to disable warning on VS 2458 doc/snobol4.1: update HOST() example 2459 24609/26/2013: 2461 snolib/sdb.sno: make sure &INPUT enabled before trying to read!! 2462 found trying to debug genc.sno (for SNOBOL4B) 2463 doc/snobol4.1: fix documentation for "-PLUSOPS" 2464 configure, lib/snolib/random.c: ditched HAVE_DEV_RANDOM 2465 pick up DEV_RANDOM, if defined 2466 24679/25/2013: 2468 Makefile2.m4, configure, sdb.sh: fix sdb.sno path 2469 params.h: fix snobol4.c compilation! 2470 24719/24/2013: 2472 Makefile2.m4: put SNOBOL4_C_FLAGS after CFLAGS 2473 straighten out(?) SNOLIB_xxx paths 2474 install docs at version top level 2475 configure: enable -Wall for gcc, set SNOBOL4_C_FLAGS like w/ clang 2476 OPT=-O3 w/ clang 2477 straighten out(?) SNOLIB_xxx paths 2478 timing: clean up dmesg.boot (e)grep 2479 find/run lspci -v on linux for any VM info 2480 flush ref to config.guess 2481 find /sys/devices/...../model files 2482 lib/init.c: fix strjoin() calls for K&R C 2483 fix VER/lib path (found on Windows!) 2484 lib/snolib/random.c: enhance comment 2485 .cvsignore: add version 2486 sdb.sh: remove listfile on exit trap 2487 pkg/win32/install.bat: COPYRIGHT, CHANGES, README, fix README.win32 2488 take SNOBASE as optional argument 2489 pkg/win32/makezip.sh (new) 2490 24919/23/2013: 2492 v311.sil: [PLB116] use SMAXINT 2493 config/win32/config.h: add ifdef _WIN64, USE_MEMMOVE, USE_MEMSET 2494 config/win32/ntmsvc.mak: remove bcopy, bzero 2495 include/str.h: add ifdef USE_MEMSET 2496 include/snotypes.h: define SMAXINT, use (unsigned INT_T)1 2497 configure: save INITIAL_CFLAGS 2498 enable warnings for problems found by clang 2499 detect clang, disable warnings for SIL code issues 2500 pml.h, lib/dump.c, lib/{dump,bsd/inet6,posix/tty}.c 2501 fix nits to quiet clang 2502 include/macros.h: fix nit found by gcc w/ -Wparens enabled 2503 lib/{io,snolib/serv,unix98/load}.c: fix bugs found by clang warnings 2504 pkg/win32/sdb.bat: add LIBDIR, comments, RCS-Id 2505 25069/22/2013: 2507 lib/io.c, lib/init.c: make UINTCL a counter for VC10 ^C handling 2508 ditched DEF_SNOPATH; build using SNOLIB for base 2509 add io_show_path() -- command line option -z 2510 include/lib.h: add io_show_path() 2511 pkg/win32/README.win32 (new) 2512 pkg/win32/install.bat: install README.win32 2513 configure: ditch DEF_SNOPATH, add SNOLIB_BASE 2514 config/win32/config.h: ditch DEF_SNOPATH, define SNOLIB_BASE 2515 doc/snobol4.1: update 2516 25179/20/2013: 2518 lib/io.c: try to clear EOF condition from ^C in VC10 2519 25209/19/2013: 2521 lib/init.c: re-arm SIGINT handler for Win32/VC10 2522 2523*** 1.5-rc3 (tag REL_1_5_RC3) 2524 25259/19/2013: 2526 configure: update to 1.5-rc3 2527 CHANGES: update 2528 lib/init.c: usage() displays built-in SNOPATH setting 2529 doc/snobol4.1: update 2530 doc/snobol4tcl.3: update date 2531 lib/io.c: moved "mode" string creation to of io_fopen2() 2532 25339/18/2013: 2534 Makefile: use HAVE_CONFIG_H w/ tsort 2535 recurse to make tsort, so isnobol4.c doesn't 2536 depend on tsort or config.h!! 2537 bsdsort.c: use HAVE_CONFIG_H 2538 INSTALL: update 2539 doc/sdb.1: update 2540 doc/snobol4.1: update 2541 lib/init.c: don't raise "User Interrupt" if &ERRLIMIT is zero. 2542 snolib/sdb.sno: comment 2543 configure: remove old comments 2544 25459/17/2013: 2546 lib/init.c: Set UINTCL on SIGINT except if in compiler 2547 snolib/sdb.sno: detect and ignore ^C in readline() 2548 Makefile: bsdtsort requires config.h to build/run correctly on 64bits 2549 bsdsort.c: need config.h to get include file ifdefs 2550 25519/16/2013: 2552 config/win32/config.h: add "lib" to default SNOPATH 2553 pkg/win32/sdb.bat: add \lib\ to sdb.sno path 2554 25559/15/2013: 2556 configure: --with-tcl= now requires path to tclConfig.sh 2557 fix forkpty check on OSX 2558 INSTALL: document --with-tcl= 2559 lib/io.c: fix compilation without PTYs 2560 25619/14/2013: 2562 configure: check for forkpty 2563 lib/io.c: add support for ||ptycommand 2564 unionize variant data 2565 25669/13/2013: 2567 configure: check for clock_getcpuclockid() 2568 lib/posix2001/mstime.c: use clock_getcpuclockid() 2569 pkg/win32/install.bat: moved from config dir, updated, enhanced 2570 config/win32/config.h: have SNOLIB_DIR include drive name 2571 snolib/sdb.sno: cleanup 2572 25739/12/2013: 2574 snolib/sdb.sno: fix watchpoints, use SCONTINUE for ^C (again) 2575 v311.sil: [PLB114] pulled LASTFILE/LINE & USRINT checks to top of INIT 2576 [PLB115] single letter trace types (ala SPITBOL) 2577 test/t.{sno,ref} (new): test single letter trace types 2578 test/tests.in: add t.sno 2579 25809/11/2013: 2581 snolib/sdb.sno: cleanup; 2582 "silent" command now works 2583 next steps only once 2584 25859/10/2013: 2586 snolib/sdb.sno: cleanup 2587 25889/5/2013: 2589 snolib/sdb.sno: upto 25x faster!! 2590 enable STCOUNT trace ONLY when needed!! 2591 use BREAKPOINT() (&STNO trace) 2592 use FNCLEVEL trace for finish/next 2593 25949/3/2013: 2595 configure: create version file 2596 Makefile: note version file 2597 25989/2/2013: 2599 test/keytrace.{sno,ref}: test STOPTR and reenable 2600 config/win32/snobol4.vcxproj: add break.c 2601 snolib/sdb.sno: flush VARS0 2602 26038/31/2013: 2604 snolib/sdb.sno: get rid of CONS on first trap line (was failing?) 2605 set SDB.INTERRUPT on ^C instead of STEP_COUNT 2606 move SDB.TRAP.EXIT entry up 2607 clean up SETEXIT_HANDLER 2608 doc/sdb.1: add "what" command 2609 v311.sil: [PLB113] fix keyword trace output I broke in 2005 (in [PLB90]) 2610 add chk_break() call -- fires STNO KEYWORD trace 2611 lib/break.c (new): chk_break() and BREAKPOINT() 2612 Makefile2.m4: add break.c 2613 config/{djgpp/Makefile,vms/descrip.mms}: add break.c 2614 config/win32/{borland,mingw,ntmsvc}.mak: add break.c 2615 pml.h: add BREAKPOINT() function 2616 include/lib.h: add chk_break() 2617 test/tests.in: add keytrace.sno 2618 test/keytrace.{sno,ref}: test KEYWORD tracing, incl. BREAKPOINT() 2619 26208/30/2013: 2621 v311.sil: [PLB112] save/restore &LAST{FILE,LINE} in TRPHND 2622 restore saved &LINE at GOTL3 (ABORT handler) 2623 test/setexit.{sno,ref}: output &LAST{NO,FILE,LINE} 2624 test/setexit6.{sno,ref}: setexit.sno w/ STCOUNT trace 2625 test/tests.in: add setexit6 2626 snolib/sdb.sno: output date as well as version 2627 test/bench.sno: drop max time to 60s (from 120s) 2628 2629*** 1.5-rc2 (tag REL_1_5_RC2) 2630 26318/29/2013: 2632 configure: test for rl_copy_keymap() -- missing on NetBSD/OSX 2633 update for 1.5-rc2 2634 2635*** 1.5-rc1 (tag REL_1_5_RC2) 2636 26378/27/2013: 2638 lib/unix98/load.c: fix missing return value (found by clang) 2639 test/tests.in: add atn.sno 2640 test/atn.{sno,ref}: new test 2641 CHANGES: updated 2642 README: add Fred Weigel to credits 2643 doc/sdb.1: credit Fred Weigel for DDT 2644 26458/26/2013: 2646 snolib/sdb.sno: add "what" command 2647 v311.sil: [PLB111] check for null value in LABEL() 2648 pkg/win32/{sdb,timing}.bat: use %~dp0 to get SNODIR 2649 pkg/win32/timing.bat: use start for ^C trapping 2650 lib/posix2001/mstime.c: fall back to getrusage() 2651 flush unused variable 2652 26538/25/2013: 2654 CHANGES: updated 2655 README: updated for 1.5 2656 snolib/sdb.sno: updated copyright 2657 doc/snobol4.1: update with 1.5 changes, all error numbers 2658 configure: update to 1.5rc1 2659 doc/sdb.1: mention error catching, ^C 2660 pkg/win32/{sdb,timing}.bat: use SYSTEMDRIVE 2661 26628/24/2013: 2663 lib/init.c: fatal error if -L file doesn't exist 2664 allow list to stdout w/ -l - 2665 test/setexit4.{sno,ref}: test END trap after error 2666 test/setexit5.{sno,ref}: test [F]RETURN from error handler 2667 test/tests.in: add setexit[45] 2668 26698/23/2013: 2670 snolib/sdb.sno: allow continue after error 2671 trap ^C (step once) 2672 v311.sil: [PLB110] fix continue from END after an error 2673 fix duplicate END2 label 2674 procs: add END0 2675 test/diag1.ref: adjust 2676 26778/22/2013: 2678 init.c: if SETEXIT handler set, set UINTCL on SIGINT (^C) 2679 v311.sil: [PLB109] Implement "User Interrupt" (SIGINT) handling 2680 Set &LAST{NO,FILE,LINE} in XITHND 2681 Allow new errors to overwrite old return information 2682 procs: add USRINT, remove XITERR 2683 snolib/sdb.sno: cleanup, use SETEXIT() 2684 snobol4.1: add missing .TP 2685 26868/16/2013: 2687 timing: add "END" 2688 lib/init.c: explicitly init lib path with "." 2689 lib/io.c: fix some memory leaks 2690 no longer need to try include locally first 2691 pkg/win32/timing.bat: add "running benchmark:" and "END" 2692 26938/15/2013: 2694 config/win32/snobol4.vcxproj: add loadx.c 2695 config/win32/ntmsvc.mak: fix cpuid build 2696 26978/14/2013: 2698 configure: check for POSIX-2001 clock_gettime(CLOCK_PROCESS_CPUTIME_ID) 2699 config/check: add -r and -d options (also honor CHECK_DEBUG) 2700 lib/posix2001/mstime.c: get precise runtime on Linux 2701 timing.sno: add PREC() INT() functions 2702 Makefile2.m4: make separate tested target 2703 Makefile: have make clean remove tested 2704 config/win32/ntmsvc.mak: fix loadx.obj, add cpuid.exe 2705 lib/win32/osopen.c: fix /dev/null, unbuffer /dev/tty 2706 pkg/win32/sdb.bat: script to run sdb! 2707 pkg/win32/timing.bat: script to run timing!! 2708 timing.sno: don't look for shell time on windows 2709 27108/13/2013: 2711 COPYRIGHT, README: update copyright for 2013 2712 timing: run test/bench.sno 2713 test/genc.sno: frozen version of 1.4.1 genc for regression test 2714 test/test.genc.sh: test script for genc 2715 test/tests.in: add genc test 2716 test/{callgraph,genc,proc.h,static.h}.ref: genc test outputs 2717 test/bench.sno: frozen benchmark 1.4.1 genc; loops for accuracy 2718 test/v311.sil, test/globals, test/procs: 1.4.1 files for timing, genc 2719 test/{nqueens,sudoku}.{sno,ref}: from berstis.com 2720 test/tests.in: add nqueens,sudoku 2721 27228/7/2013: 2723 doc/snobol4tcl.3: update example code 2724 v311.sil: [PLB108] Add &MAXINT 2725 lib/snolib/host.c: moved BPS to include/snotypes.h 2726 include/snotypes.h: add BPS, MAXINT 2727 test/maxint.{sno,ref}: test &MAXINT 2728 test/tests.in: add maxint 2729 configure: drop down to 15 digits precision for double formatting 2730 better safe than sorry. 15 is all Perl prints! 2731 test/float2.{sno,ref}: add more tests 2732 27338/6/2013: 2734 lib/snolib/stcl.c: fix for Tcl 8.6 2735 problem found by Michael Richter 2736 27378/4/2013: 2738 v311.sil: [PLB107] Display avg ns. per statement 2739 Add &STEXEC -- total statements executed 2740 &GCTIME -- total time in GC 2741 timing.sno: update for ns. 2742 27438/1/2013: 2744 v311.sil: [PLB106] add &PI 2745 27467/31/2013: 2747 test/float.{sno,ref}: output PI 2748 test/pow.{sno,ref}: output only rational numbers 2749 test/float2.{sno,ref}: test for double precision formatting 2750 test/digits.{sno,ref}: test for &DIGITS &LCASE &UCASE 2751 test/spit.sno: truncate PI string 2752 test/tests.in: add float2, digits 2753 data_init.c: add DIGITS 2754 v311.sil: [PLB105] add &DIGITS 2755 27567/6/2013: 2757 Discovered 64-bit doubles are never output with full precision, 2758 Thanks to Phillip Thomas 2759 configure: define REALST_FORMAT when double precision in use 2760 lib/realst.c: add REALST_FORMAT 2761 lib/ansi/spreal.c: use real_t 2762 27637/5/2013: 2764 timing: tweak lsb_release usage for Beaglebone "Angstrom" 2765 276612/3/2012: 2767 lib/win32/sys.c: add WinServer2012 2768 27697/8/2012: 2770 configure: OpenBSD MIPS requires sys/types.h before socket.h 2771 (reported by Anonymous) 2772 27734/24/2012: 2774 doc/snobol4.1: document default INPUT record length 2775 (suggested by John McHugh) 2776 27773/9/2012: 2778 snolib/dynamic.sno: use HOST(HOST_INCLUDE_DIR) 2779 27803/6/2012: 2781 lib/loadx.c: include stdlib.h 2782 lib/io.c: avoid rl_keymap_discard() 2783 call rl_initialize() if no rl_keymap_discard() available 2784 works on OS X 10.4 (but not NetBSD 5.1?) 2785 configure: check libedit for readline() 2786 27873/4/2012: 2788 include/lib.h: add strjoin() 2789 lib/str.c: add strjoin() 2790 lib/loadx.c: try bare path + DL_EXT 2791 lib/unix98/load.c: if path contaisn no DIR_SEP, try ./path 2792 27932/29/2012: 2794 configure: set HAVE_RL_SET_KEYMAP 2795 lib/io.c: check HAVE_RL_SET_KEYMAP (OS X comes with NetBSD editline) 2796 27972/24/2012: 2798 configure: replace HAVE_READLINE with COMPILER_READLINE 2799 lib/io.c: honor COMPILER_READLINE 2800 gendata.sno: add REAL op 2801 genc.sno: fix many ops; set LIVE if no success label 2802 v311.sil: [PLB104] safety check KSt/sec division; use REAL constants 2803 flush SPDLDR; increase PMSTACK to 8000, ISTACK to 4000 2804 lib/init.c: increase NDYNAMIC to 512K, flush SPDLDR 2805 28062/23/2012: 2807 doc/snobol4random.3: fix typo, enhance SRANDOMDEV entry. 2808 v311.sil: [PLB103] Report K Statements/sec 2809 28102/18/2012: 2811 Makefile2.m4: install INCLUDE_H files in INCLUDE_DIR 2812 28132/17/2012: 2814 lib/unix98/load.c: add missing return 2815 configure: put SNOLIB_DIR/local (w/ version) before SNOLIB_BASE/local 2816 28172/15/2012: 2818 Use loadx/os_load for Win32 2819 config/win32/{borland,mingw,ntmsvc}.mak: add loadx.c 2820 lib/loadx.c: add comment 2821 lib/win32/load.c: convert to os_load() API 2822 lib/init.c: Add def_snopath 2823 28242/15/2012: 2825 lib/loadx.c (new): O/S independant load(), callx(); uses "lib_find" 2826 Makefile2.m4: add LOADX_C, loadx.o rule 2827 configure: add loadx.o when using unix98/load.c 2828 timing.sno: output KStatements/sec 2829 include/lib.h: add mspec2str(), os_load() 2830 lib/str.c: add mspec2str(), strjoin() 2831 lib/unix98/load.c: implement os_load() 2832 28332/14/2012: 2834 v311.sil: [PLB102] Add -HIDE for sdb 2835 snolib/sdb.sno: use -HIDE 2836 pml.h, lib/snolib/file.c: add FILE_ISDIR, FILE_ABSPATH, use mgetstring 2837 test/tests.in: add file.sno, hide.sno 2838 test/file.{sno,ref} (new): test FILE, FILE_ISDIR, FILE_ABSPATH 2839 load.h: add RETPRED(bool) 2840 test/run.sh: set enviroment variables inside a subshell 2841 lib/init.c: add pathinit(): called after options, before io_preload() 2842 test/hide.{sno,ref} (new): test -HIDE 2843 28442/13/2012: 2845 tests/run.sh: remove bogus shifts 2846 28472/12/2012: 2848 doc/snobol4.1: update for SNOPATH, -I, -L 2849 test/tests.in: add include path, preload tests 2850 tests/run.sh: handle command line, environment args 2851 tests/include{2,3,4}.{sno,ref}: include path tests 2852 tests/preload{1,2,3,4}.{sno,ref}: preload tests 2853 test/aa/aa.sno: include test file 2854 test/bb/bb.sno: include test file 2855 test/pa/preload.sno: preload test file 2856 test/pb/preload.sno: preload test file 2857 28582/10/2012: 2859 lib/io.c: move preload code to io_preload() 2860 lib/init.c: call io_preload() 2861 include/lib.h: declare io_preload() 2862 28632/9/2012: 2864 configure: drop DEF_SNOBOL_PRELOAD_PATH 2865 lib/init.c: default SNOBOL_PRELOAD_PATH from SNOPATH 2866 append PRELOAD_FILENAME to dir names in SNOBOL_PRELOAD_PATH 2867 lib/io.c: use abspath() function 2868 include/lib.h: add prototypes for isdir() and abspath() 2869 lib/generic/exists.c: add isdir() and abspath() 2870 lib/win32/exists.c: add isdir() and abspath() 2871 28722/2/2012: 2873 v311.sil: [PLB101] only modify function entry if LOAD succeeds 2874o test/tests.in: add loaderr.sno 2875 test/loaderr.{sno,ref}: test load failure 2876 28772/2/2012: 2878 configure: add DEF_SNOBOL_PRELOAD_PATH 2879 lib/init.c: new preload code: SNOBOL_PRELOAD_PATH env var 2880 -L FILE preloads a file (search SNOPATH) 2881 sdb.sh: use -L for sdb.sno 2882 28831/22/2012: 2884 configure: add INCLUDE_DIR, DEF_SNOPATH, version 1.5- 2885 lib/io.c: add lib dirs; io_add_lib_{dir,path}, io_lib_find 2886 include/lib.h: io_add_lib_{dir,path}, io_lib_find 2887 lib/init.c: set up lib path: honor SNOPATH, -I option 2888 lib/snolib/host.[ch]: add HOST_DEF_SNOPATH, HOST_INCLUDE_DIR 2889 2890**************** rerelease 1.4.1 (CVS tag REL_1_4_1bis) 2891 28921/22/2012: 2893 include/snotypes.h: flush uint_t (Solaris sys/types.h has uint_t) 2894 lib/generic/expops.c: flush uint_t; use unsigned INT_T 2895 2896**************** release 1.4.1 (CVS tag REL_1_4_1) 2897 28981/19/2012: 2899 include/snotypes.h: add uint_t for expops.c 2900 lib/generic/expops.c: use uint_t fix Solaris Studio warning 2901 lib/snolib/ndbm.c: include stdlib for strtol() 2902 Makefile: add cpuid 2903 Makefile2.m4: have cpuid depend on cpuid.c, use CC 2904 cpuid.c: update for Solaris Studio, 2905 report compiler versions 2906 configure: check for finite() in ieeefp.h on Solaris 2907 use CFLAGS on size check 2908 include/macros.h: check for FINITE_IN_IEEEFP_H 2909 29101/18/2012: 2911 configure: cleanup/fix socket tests (again) 2912 README: add Anonymous 2913 29141/16/2012: 2915 configure: rework socket library tests for Solaris 2916 simplify socklen_t check 2917 Makefile: remove sdb in make clean 2918 .cvsignore: add version.h 2919 snolib/dynamic.c: use DSEP, add DYNAMIC.DEBUG variable 2920 29211/15/2012: 2922 configure: detect glibc on Ubuntu, set HAVE_GLIBC 2923 lib/snolib/time.c: test for HAVE_GLIBC, check datatypes, lengths 2924 test/random.{sno,ref}: show avg*100 2925 29261/11/2012: 2927 doc/sdb.1: add readline references 2928 CHANGES: update 2929 29301/10/2012: 2931 Makefile: add all, sdb 2932 Makefile2.m4: add all, ALL 2933 install sdb as sdb-VERS, snobol4-VERS 2934 have sdb use snobol4-VERS 2935 make symlinks to sdb, snobol4 2936 sdb.sh: add <VERS> 2937 test/random.{sno,ref}: test RANDOM() 2938 tests.in: add random.sno 2939 29401/9/2012: 2941 Makefile2.m4: make sdb depend on configure 2942 snolib/sdb.sno: fix readline test! 2943 configure: fix typo 2944 doc/sdb.1: can't break on END label 2945 fix bolding on "next" 2946 29471/7/2012: 2948 configure: try to fix tcl search on ubuntu; update to v1.4+ 2949 doc/.cvsignore: add snobol4{random,tcl,time}.{0,html,ps,pdf} 2950 Makefile2.m4: install sdb.1 2951 2952**************** release 1.4 (CVS tag REL_1_4) 2953 29541/6/2012: 2955 INSTALL, README: update for 1.4 release 2956 lib/snolib/readline.c: include stdlib.h for free() 2957 include/load.h: fix RETSTR_FREE() warning 2958 lib/auxil/bindresvport.c: fix VS10 warning 2959 doc/snobol4tcl.3: update date 2960 configure: fix gdbm support on cygwin, cleanup readline checks 2961 move LIBDIR under Tcl support 2962 update version to 1.4 2963 2964**** tag REL_1_4_RC2 2965 29661/5/2012: 2967 load.h: add RETSTR_FREE() macro 2968 lib/snolib/random.c: add GCC pragma to disable -Wunused 2969 lib/snolib/readline.c: use RETSTR_FREE() 2970 configure: export CC and CFLAGS (if needed) for "check script 2971 Makefile2.m4: update timing.out advertisement 2972 29731/5/2012: 2974 configure: give error exit when MINGW detected to abort "make" 2975 config/win32/snobol4.vcxproj: add sleep.c 2976 lib/win32/sleep.c: fix includes for non-test compilation 2977 lib/generic/sleep.c: fix includes 2978 29791/4/2012: 2980 configure: look for nanosleep(); use posix/sleep.c; update to -rc2 2981 config/win32/{borland,mingw,ntmsvc}.mak: add sleep 2982 config/win32/config.h: add HAVE_SLEEP 2983 doc/snobol4time.3: document sleep failure return 2984 include/lib.h: sleepf() returns int 2985 lib/{bsd,generic,win32}/sleep.c: return value 2986 lib/posix/sleep.c (new): use nanosleep 2987 test/sleep.{sno,ref} (new): test sleep 2988 test/tests.in: add sleep.sno 2989 pml.h: removed RANDOM prototypes 2990 doc/snobol4.1: remove RANDOM function 2991 doc/snobol4random.3 (new): document RANDOM functions 2992 doc/snobol4readline.3 (new): document READLINE functions 2993 doc/Makefile: use implicit rules, add snobol4r{andom,eadline} 2994 snolib/random.sno (new): load RANDOM functions 2995 snolib/readline.sno (new): load READLINE functions 2996 Makefile2.m4: add snobol4{random,readline,time}.3 2997 lib/init.c: use %lu for sizes to avoid warnings (want %z) 2998 lib/snolib/time.c: fix features defines for Ubuntu 11.10 (glibc 2.13) 2999 30001/3/2012: 3001 config/check (new): do a test compile w/ include, code, libs 3002 configure: use config/check 3003 fix for COM libs on Windows 7 (thanks to Robert Shanley) 3004 add --without-com 3005 use db.h for dbm w/ DB_DBM_HSEARCH 3006 add checks for sleep.c 3007 snolib/readline.sno (new): readline prototypes 3008 snolib/sdb.sno: use readline.sno 3009 pml.h: removed readline prototypes 3010 lib/generic/execute.c: use NULL to keep gcc quiet 3011 Makefile2.m4: add SLEEP_C/sleep.o 3012 lib/snolib/time.c: use sleepf(real_t) for SLEEP() 3013 lib/bsd/sleep.c (new): implement sleepf using select 3014 lib/generic/sleep.c (new): implement sleepf using sleep 3015 lib/win32/sleep.c (new): implement sleepf using Sleep 3016 include/lib.h: add sleepf() 3017 doc/snobol4time.3: document SLEEP taking f.p. seconds 3018 timing: more release files 3019 30201/2/2012: 3021 configure: use LIBDIR in TCL_CONF_DIRS instead of /usr/lib 3022 detect MINGW 3023 uname cleanup 3024 lib/win32/sys.c: Add a cast, arm architecture 3025 cpuid.c: fix MSC defines 3026 30271/1/2012: 3028 snolib/sdb.sno: update copyright notice 3029 configure: flush ALTLIBDIR 3030 lib/snolib/time.c: cleanup: enums, error checks/returns 3031 lib/snolib/readline.c: fix warning 3032 lib/win32/sys.c: Add Win 8, show build on unknown systems 3033 lib/init.c: fix warning 3034 303512/31/2011: 3036 cpuid.c: rework for 64-bit Mac and Windows 3037 configure: quiet some compiler warnings, fix HWNAME display 3038 CHANGES: cleanup 3039 3040*** 1.4-rc1 3041 304212/30/2011: 3043 Update manual pages, CHANGES, COPYRIGHT, README 3044 New: doc/snobol4time.3, doc/sdb.3 3045 304612/29/2011: 3047 pml.h, lib/snolib/random.c: add SRANDOM, SRANDOMDEV 3048 default to srandom(1) for seed. 3049 v311.sil: [PLB100] SETEXIT returns old value 3050 doc/snobol4.1: Document ATAN, LN, SETEXIT. 3051 305212/28/2011: 3053 configure: use tclConfig.sh for Tcl configuration 3054 (Thanks to Michael Richter) 3055 305610/1/2011: 3057 cpuid.c: declare main as returning int 3058 configure: declare main as returning int, avoid exit() 3059 30609/24/2011: 3061 timing: look for acpi0: in dmesg.boot 3062 30639/23/2011: 3064 cpuid.c: Get Hypervisor info (name) 3065 only use PIC code on OSX 3066 ifdef body for x86[-64] 3067 Makefile: always compile cpuid 3068 timing: remove -fPIC, run cpuid if it exists 3069 30709/5/2011: 3071 cpuid.c: make PIC safe (for MacOS) with help from 3072 http://sam.zoy.org/blog/2007-04-13-shlib-with-non-pic-code-have-inlin 3073 timing: force -fPIC for cpuid compile (default on MacOS) 3074 30758/18/2011: 3076 configure: crock to look in /usr/lib/INSTSET-linux-gnu for 3077 gdbm_compat library for Ubuntu 11.04 3078 30796/19/2011: 3080 configure: look in /usr/include/tcl*.* for tcl.h 3081 problem reported by Michael Richter 3082 Fatal error if Tcl not found when --with-tcl given! 3083 3084 doc/snobol4tcl.3: remove duplicated code from example program 3085 30866/1/2011: 3087 doc/snobol4tcl.3: remove FILES section (pasted from dbm page)! 3088 30895/25/2011: 3090 doc/snobol4.1: fixes from Mark Laster 3091 README: Add Mark Laster, update for 2011 3092 COPYRIGHT: Update for 2011 3093 TODO.soon: update (parity: removed one, added one) 3094 30952/16/2011: 3096 removed version.c, no longer used 3097 configure: put VERSION and VERSION_DATE in version.h 3098 output HAVE_SLEEP 3099 check for /dev/random, output HAVE_DEV_RANDOM 3100 main.c: include version.h 3101 Makefile: version.h create by configure 3102 Makefile2.m4: install version.h 3103 config/djgpp/Makefile, config/vms/descrip.mms, 3104 config/win32/{borland.mak,mingw.mak,ntmsvc.mak,snobol4.vcxproj}: 3105 flush version.c 3106 lib/snolib/time.c: check HAVE_SLEEP 3107 lib/snolib/random.c: fix a warning, try making win32 safe, 3108 always call into own [s]random() functions! 3109 config/win32/{borland.mak,mingw.mak,ntmsvc.mak,snobol4.vcxproj}: 3110 add atan, random 3111 31122/7/2011: 3113 lib/init.c: fix "-l" entry in usage message 3114 doc/snobol4.1: merge two >RACE entries 3115 update -l entry, URLs 3116 31172/2/2011: 3118 configure: fix readline test 3119 31201/30/2011: 3121 lib/snolib/time.c: add SLEEP() 3122 snolib/time.sno: add SLEEP() 3123 pml.h: add SLEEP 3124 configure: define VERSION & VERSION_DATE here 3125 output VERSION and VERSION_DATE into config.h 3126 output VERS into config.m4 3127 append VERSION to default SNOLIB_DIR 3128 removed: version.c 3129 Makefile: remove pv 3130 Makefile2.m4: remove pv, version.c, version.o 3131 main.c: move version display in-line 3132 31331/29/2011: 3134 new sdb.sh: driver script for SDB debugger 3135 Makefile2.m4: create and install sdb from sdb.sh 3136 31371/24/2011: 3138 new snolib/random.c: FreeBSD random() function 3139 pml.h: add RANDOM 3140 Makefile2.m4: add random 3141 sdb.sno: cleanup 3142 31431/23/2011: 3144 v311.sil [PLB99] fix FUNCTION for referenced, but undefined functions 3145 Makefile2.m4: add atan to snolib 3146 pml.h: add ATAN, LN 3147 version.c: update to 1.3+ 3148 sdb.sno: get version from Id, use readline 3149 test/function.sno: test undefined, but referenced functions! 3150 31511/22/2011: 3152 configure: add --snolibdir= --without-readline 3153 configure, Makefile2.m4: add readline 3154 pml.h: readline, atan, ln 3155 new lib/snolib/readline.c: readline functions 3156 new lin/snolib/atan.c: arc tangent 3157 new snolib/sdb.sno 3158 sdb.sno: use readline! 3159 31601/21/2011: 3161 v311.sil [PLB98] SETEXIT cleanup; prohibit re-entry, trap at END 3162 test/diag1.{ref,sno}: update for SETEXIT 3163 test/diag2.ref: update for SETEXIT 3164 test/setexit.sno: update 3165 test/setexit2.{ref,sno}: test for END trap 3166 test/tests.in: add setexit2.sno 3167 test/time.{sno,ref}: test MKTIME w/ LOCALTIME 3168 31691/20/2011: 3170 v311.sil: [PLB97] implement SETEXIT/CONTINUE/SCONTINUE/ABORT 3171 globals, procs: add labels for SETEXIT 3172 lib/init.c: comment in signal handler 3173 test/setexit.{sno,ref}: SETEXIT test 3174 test/test.err.sh: test runner for programs that err out! 3175 test/tests.in: add SETEXIT test 3176 317712/22/2010: 3178 snolib/http.sno: 6/20/2009 fix broke it! add HTTP.CRLF!! 3179 cpuid.c: return 0 3180 318112/20/2010: 3182 lib/io.c: quiet gcc warnings, again 3183 snolib/time.sno: add STRPTIME 3184 pml.h: renamed STRPTIME to STRPTIME_ 3185 lib/snolib/time.c: fix STRPTIME_ 3186 318712/18/2010: 3188 lib/init.c, lib/io.c: -l flag takes listing file name 3189 pml.h, lib/snolib/time.c, snolib/time.sno, test/time.{ref,sno}: 3190 clean/tweak time to be more standards aligned 3191 configure: add time-related checks 3192 319312/16/2010: 3194 Add POSIX date/time handling; inspired by Rafal Sulejman 3195 new lib/snolib/time.c 3196 new snolib/time.sno 3197 Makefile2.m4: add time.o, TIME_C 3198 test/time.{sno,ref} 3199 320011/18/2010: 3201 Handle allocations of > 4GB -- reported by Howard Bussey 3202 include/lib.h: dynamic(size_t) 3203 lib/init.c: size_t ndynamic, pmstack, istack; getk takes size_t 3204 lib/{bsd,generic,posix}/dynamic.c: dynamic(size_t) 3205 320610/23/2010: 3207 doc/snobol4.1: fix incorrect usage of it's reported by Guido M. 3208 32099/28/2010: 3210 configure: fix search for "install" script reported by Noah Birnel 3211 32125/30/2010: 3213 config/win32/snobol4.vcxproj: VS10 Project thanks to Meir Livneh 3214 config/win32/ntmsvc.mak: comment tested w/ VS10 3215 lib/win32/{osopen,load}.c: include string.h 3216 lib/sdbm/sdbm.c: if'ed out extern errno 3217 lib/auxil/bindresvport.c: only define EADDRINUSE if needed on Win32 3218 README: Add Meir Livneh 3219 32205/24/2010: 3221 lib/posix/dynamic.c: prefer posix_ api for madvise 3222 latest CygWIN only supplies posix version 3223 lib/win32/sys.c: add server variable 3224 3225**************** re-release 1.3 (CVS tag REL_1_3bis) 3226 32275/19/2010: 3228 Makefile: add cpuid binary to disposables 3229 causes pain on CygWIN! 3230 3231**************** release 1.3 (CVS tag REL_1_3) 3232 3233 (35th anniversary of SNOBOL4 v3.11 release) 3234 32355/19/2010: 3236 History: update for 1.3 3237 version.c: update to 1.3 3238 README: update to 1.3 3239 Copyright: update year 3240 CHANGES: update for 1.3 release 3241 doc/snobol4.1: update for 1.3 3242 32435/15/2010: 3244 timing: try cpuid.c more freely 3245 32463/10/2010: 3247 timing: try compiling/running cpuid.c for CYGWIN/MINGW/SolX86 3248 cpuid.c: fetch, print vendor and cpu model using cpuid instruction 3249 32502/27/2010: 3251 configure: defend against empty MACHINE variable 3252 325312/24/2009: 3254 timing: run lsb_release program, if found 3255 325612/22/2009: 3257 configure: be more careful about using /usr/lib64 3258 timing: look for lsb-release before debian-version for Ubuntu 3259 look for lsb-release.d for RedHat/Fedora 3260 326111/10/2009: 3262 lib/win32/sys.c: put wProductType under ifdef HAVE_GETVERSIONEX, 3263 thanks to Dani Richard. 3264 Add Win7/WinServer2008R2 3265 lib/win32/com.cpp: get rid of a VC 6.0 compiler complaint 3266 README: Add Dani Richard 3267 32688/29/2009: 3269 v311.sil: fix GC crash when COLLECT() called immediately after 3270 an "external" function. Reported by Laurence Battin. 3271 tests/collect.sno, test/collect2.ref: regression tests 3272 include/load.h: add SETRETVAL macro 3273 README: Add Lawrence 3274 32756/20/2009: 3276 fix http.sno (thanks to Burkhard Mesisner) 3277 to send entire request in one TCP segment 3278 was giving trouble under DJGPP+WatTCP 3279 32801/24/2009: 3281 fix MinGW compilation (thanks to Bruce Axtens) 3282 lib/win32/sys.c: use HAVE_GETVERSIONEX 3283 config/win32/mingw.mak: link with libstdc++ 3284 removed -fvtable-thunks -DNEED_COGETOBJECT 3285 config/win32/config.h: define HAVE_GETVERSIONEX 3286 README: Add Bruce 3287 328812/17/2008: 3289 lib/win32/com.cpp: fix for VS2003 compilation 3290 version.c: update to 1.2+ 3291 3292**************** release 1.2 (CVS tag REL_1_2) 3293 3294 (15th anniversary of ALPHA1 release) 3295 329612/8/2008: 3297 History: update for 1.2 3298 version.c: update to 1.2 3299 README: update to 1.2 3300 Copyright: update year 3301 CHANGES: update for 1.2 release 3302 doc/snobol4.1: update for 1.2 3303 lib/win32/sys.c: detect WinServer2008 3304 timing: output END_SYSTEM_PROFILER 3305 33064/25/2008: 3307 INSTALL: document --universal 3308 33093/13/2008: 3310 use $(MAKE) in "make pv" 3311 33121/18/2008 3313 lib/win32/sys.c: detect WOW64 3314 33151/11/2008 3316 timing: run system_profiler on Darwin 3317 331810/25/2007 3319 snolib/utf.sno: fix UTFLEN() to handle zero 3320 33213/18/2006 3322 lib/win32/sys.c: add amd64 3323 33243/6/2007 3325 INSTALL: document --add-cflags 3326 configure: document --add-cflags --fast 3327 add & document --universal 3328 33291/7/2007 3330 configure, Makefile2.m4: replace ADD_WARN with ADD_CFLAGS 3331 lp64 options ALWAYS need to be present! 3332 add --add-cflags option to configure 3333 33341/4/2007 3335 timing: dump "machdep" sysctl, needed to find CPU model on MacIntel 3336 333710/3/2006 3338 lib/bsd/inet6.c: remove INADDR_NONE define 3339 33406/26/2006 3341 lib/snolib/host.[ch]: add comments, HOST_USER_EXTENSIONS 3342 new pkg/lsm 3343 33441/27/2006 3345 lib/win32/com.cpp: add debug, have GET/PUT take arb arg (index) lists 3346 configure: 1/3 change: add snolib.bundle 3347 33481/2/2006 3349 configure: uncomment SNOLIB_FILE for NeXT style load 3350 335112/24/2005 3352 lib/win32/com.cpp: cleanup/fix? 3353 335412/23/2005 3355 timing: HP-UX getconf CPU_CHIP_TYPE 3356 335712/22/2005 3358 configure: output alternate LIBDIR choice 3359 INSTALL: update optimization discussion, mention CPUFlags 3360 repaginate 3361 336212/20/2005 3363 lib/win32/com.cpp: check for BAD_HANDLE in retvariant 3364 lib/snolib/handle.c: allow redundant create_handle calls 3365 renamed handle_list to handle_table 3366 336712/12/2005 3368 configure: look for libraries in /usr/lib64, if it exists 3369 add --force-sdbm 3370 INSTALL: add --force-sdbm 3371 337212/11/2005 3373 lib/snolib/cos.c: fix comment (Thanks to Dave Feustel) 3374 timing: send "ln" errors to /dev/null (thanks to Devon) 3375 need to copy executable if hard link fails! 3376 version.c: update to 1.1+ 3377 3378**************** release 1.1 (CVS tag REL_1_1) 3379 3380 (12th anniversary of ALPHA1 release) 3381 338212/9/2005 3383 pkg/rpm/makerpm: use rpmbuild command 3384 attempt to be more eccumenical (Thanks to Rafal) 3385 pkg/solaris/prototype: 3386 add ndbm.sno stcl.sno dynamic.sno snolib.3 snobol4{dbm,tcl}.3 3387 doc/snobol4.1: tweak HOST() description 3388 version.c: update to 1.1, return instead of exit() 3389 339012/8/2005 3391 doc/snobol4.1: add SEE snobol4tcl (Thanks to Phillip Thomas) 3392 update date, HOST() example 3393 doc/snolib.3: add SEE snobol4dbm and snobol4tcl, cleanup. 3394 INSTALL: ran ispell, updated VMS info 3395 README: add snobol4tcl, snobol4dbm. repaginate 3396 339712/7/2005 3398 INSTALL: update 3399 bsd/Makefile.freebsd bsd/Makefile.netbsd debian/copyright 3400 rpm/makerpm solaris/pkginfo: update for version 1.1 3401 removed: rpm/snobol4-1.0-1.spec 3402 new: rpm/snobol4-1.1-1.spec 3403 340412/6/2005 3405 configure: try to fix --mandir= 3406 new doc/snobol4tcl.3: STCL man page 3407 Makefile2.m4 doc/Makefile doc/snolib.3: update for snobol4tcl(3) 3408 lib/bsd/popen.c: include h.h for non-ansi compilation! 3409 341012/5/2005 3411 lib/snolib/{stcl,handle}.c: include str.h to keep gcc4 quiet 3412 lib/io.c: try to keep gcc quiet 3413 snolib/ndbm.sno: add DBM_DELETE (thanks to Rafal) 3414 snolib/stcl.sno: add comments 3415 doc/.cvsignore: add snobol4dbm entries 3416 doc/snobol4dbm.3: improved 3417 CHANGES: updated 3418 test/popen2.sno: clean up 3419 342012/4/2005 3421 lib/snolib/ndbm.c, snolib/ndbm.sno, pml.h, 3422 config/vms/config.h, doc/snobol4dbm.3: add DBM_ERROR, DBM_CLEARERR 3423 doc/Makefile: add snobol4dbm targets 3424 lib/win32/sys.c: fall back to OSVERSIONINFO 3425 lib/snolib/handle.c: bzero new hash tables! 3426 342712/3/2005 3428 new snolib/stcl.sno snolib/ndbm.sno: do LOAD()ing define constants 3429 pml.h: remove PMPROTO lines for NDBM and STCL functions 3430 343112/2/2005 3432 lib/init.c: ifdef -L usage message (thanks to Rafal) 3433 default preloading off (thanks to Rafal) 3434 Change preload filenames, add warnings 3435 lib/io.c: protect against overflow in io_printf() 3436 343712/1/2005 3438 timing: show all emerge output (11/26 change) 3439 Test/clean up under VMS, turn on SDBM: 3440 config/vms/config.h: SNOLIB_DIR, NDBM defines 3441 config/vms/descrip.mms: add ndbm, handle, SDBM 3442 lib/init.c: missing return value 3443 add ifdef PRELOAD (off by default) 3444 use DIR_SEP 3445 include/load.h: turn off const in LA_STR_PTR() too much pain on VMS 3446 pml.h: use PMLPROC2 for NDBM functions 3447 Makefile2.m4: remove -L on test run (PRELOAD disabled) 3448 config/{djgpp,vms,win32}/config.h: add DIR_SEP, PATH_SEP 3449 lib/snolib/host.{h,sno}: add HOST_DIR_SEP, HOST_PATH_SEP 3450 lib/snolib/ndbm.c: fix: was using strtod() instead of strtol()!! 3451 345211/29/2005 3453 INSTALL: document --double's failings 3454 configure: --longlong implies --double, as documented! 3455 note --double should probably be removed! 3456 test/test.trace.sh: handle very tiny F.P. numbers! 3457 345811/28/2005 3459 lib/snolib/ndbm.c, pml.h: 3460 have DBM_OPEN take mode as STRING 3461 346211/25/2005 3463 include/snotypes.h, include/macros.h: 3464 fix to make --longlong + --double work on OS X 3465 (only will work in combination) 3466 346711/22/2005 3468 timing.sno: fix tabbing for DATE(2) 3469 configure: libtcl tweaks 3470 test/run.sh: fix failure exit 3471 data_init.c: remove space from COLSTR; add SPCSTR 3472 v311.sil: add SPCSP, output spaces explicitly (not in file:line) 3473 shorten "statement" to "stmt" 3474 test/{ftrace,spit,trace1,trace2}.ref: new reference output 3475 347611/21/2005 3477 Makefile2.m4: add ADD_WARN() and WARN for C compiler 3478 warning options not to be included in HOST_COPT 3479 configure: add -add-warn= 3480 lib/win32/com.cpp: update for handle_handle_t 3481 348211/20/2005 3483 configure: include leading dot on DL_EXT and SO_EXT 3484 snolib/dynamic.sno: don't need to add dot before DL_EXT 3485 348611/19/2005 3487 timing.sno: use DATE(2) 3488 lib/snolib/ndbm.c: removed parse_mode() 3489 configure: send DL_ and SO_ params to config.h too for HOST() 3490 Makefile2.m4: flush dlparam.sno; pass CC and COPT to host.c 3491 lib/snolib/host.[ch]: add HOST_DL..., HOST_SO..., HOST_CC, HOST_COPT 3492 snolib/dynamic.sno: use HOST() instead of dlparam.sno 3493 now with optimization! 3494 349511/18/2005 3496 configure: need -Ilib/sdbm to use SDBM (thanks Rafal!) 3497 lib/io.c: remove tty_setmode from io_flushall() 3498 endex -> io_finish -> io_closeall should do restore?! 3499 Was causing badness (restoring settings from bad data?) 3500 350111/16/2005 3502 new: test/test.opt.sh: implement optional test 3503 test/run.sh: handle exit status 2 from optional test failure 3504 new: test/ndbm.{sno,ref} optional test for NDBM 3505 350611/15/2005 3507 Makefile2.m4: install snobol4dbm.3 (thanks Rafal!) 3508 350911/14/2005 3510 new: doc/snobol4dbm.3: DBM info 3511 doc/snobol4.1: reference snobol4dbm(3), new Burks URLs 3512 README: new Burks URLs 3513 351411/12/2005 3515 timing: use HP-UX IA64 machinfo, add ENDCPUINFO 3516 CHANGES: updated 3517 doc/snolib.3: add dynamic.sno 3518 351911/11/2005 3520 Makefile2.m4: run regressions without preloads 3521 352211/10/2005 3523 v311.sil: decrement >RACE if positive 3524 init.c: 3525 experimental "preload" files 3526 keep count of files, append "-" if none 3527 -g sets >RACE to -1 (permanently on) 3528 -L to disable preloading 3529 configure: changed --without-tk to --with-tk 3530 353111/9/2005 3532 lib/sdbm/sdbm{,_hash,_pair}.c: use config.h 3533 lib/sdbm/sdbm.c: use unistd.h if HAVE_UNISTD_H defined 3534 configure Makefile2.m4: use SDBM as last resort 3535 README: add money 3536 include/handle.h lib/snolib/{handle,ndbm,stcl}.c: 3537 revamp handles; users pass handle_handle_t * 3538 added SNOEXP() to handle.c routines 3539 354011/8/2005 3541 snolib/wrapper.sno: add SYSPRED 3542 354311/7/2005 3544 config/win32/ntmsvc.mak: define DUFF for SDBM 3545 lib/win32/sys.c: Add IA64, Longhorn (from MSDN) 3546 lib/snolib/stcl.c: cleanup, release handles 3547 354811/4/2005 3549 config/win32/mingw.mak: add SDBM_OBJ 3550 config/djgpp/Makefile: add SDBM 3551 lib/sdbm/sdbm.c: if out old imports 3552 355311/2/2005 3554 Makefile2: TEMP: have xsnobol4 depend on dlparam.sno 3555 configure: fix dynamic linking on OSF1/DU/Tru64, SunOS4/cc 3556 Makefile2: output dlparam.sno.tmp, do mv -f at end 3557 3558 config/win32/borland.mak: add comment (behind the times) 3559 config/win32/mingw.mak config/win32/ntmsvc.mak: use SDBM 3560 lib/snolib/ndbm.c: allow use of SDBM 3561 new lib/sdbm/LOTS: Ozan Yigit's SDBM library 3562 356311/1/2005 3564 new snolib/dynamic.sno: dynamic loadable module utilities 3565 configure: Tcl tweaks 3566 Makefile2.m4: use divert/undivert for ADD_xxx macros/values 3567 configure: update for HP-UX export symbols when dld'ing; add -fast 3568 356910/31/2005 3570 snolib/wrapper.sno: fix, update 3571 357210/30/2005 3573 configure: fix SunOS4 dlparams 3574 Makefile2.m4: dlparams.sno depends on Makefile2 3575 357610/29/2005 3577 v311.sil: fix GC trace; was stomping on XCL. Use TEMPCL. 3578 configure: tweak Tcl configuration testing 3579 lib/snolib/stcl.c: add URLs 3580 timing: if no uname, run hostname if found 3581 run name w/ -n -rs and -m 3582 timing.sno: add DATE() output 3583 358410/28/2005 3585 test/tests.in test/diag1.ref test/diag2.ref 3586 diag1/2 tests need "dump" filtering 3587 358810/27/2005 3589 v311.sil timing.sno lib/init.c lib/io.c test/a.ref 3590 test/diag1.ref test/diag2.ref test/dump.ref doc/snobol4.1 3591 implement GC trace (-g flag, >RACE) GC total time stats 3592 README, COPYRIGHT: 3593 update dates 3594 CHANGES: 3595 update 3596 359710/23/2005 3598 new: test/diag1.ref test/diag1.sno test/diag2.ref test/diag2.sno 3599 add diags from VAX/VMS Macro SNOBOL4 (from SPITBOL?) 3600 v311.sil: fix backtracking w/ *opr [PLB91] 3601 new: test/unsc.sno 3602 test backtracking w/ *opr 3603 360410/22/2005 3605 test/ftrace.ref test/spit.ref test/trace1.ref test/trace2.ref 3606 update for new trace output 3607 360810/21/2005 3609 test/tests.in v311.sil 3610 new: test/func2.sno test/func2.ref 3611 Fix case folding of alternate function rentry label [PLB89] 3612 add test program 3613 v311.sil: prepend &FILE and &LINE to trace output! [PLB90] 3614 36156/14/2005 3616 configure: set, export SO_ and DL_ defines 3617 Makefile2.m4: create, install dlparams.sno 3618 36196/5/2005 3620 lib/init.c lib/io.c include/lib.h: add io_fname() 3621 Make non-existant initial command line file fatal again 3622 make sure lib.h has complete set of io.c entries 3623 36245/28/2005 3625 lib/init.c: Make non-fatal for term_open() to fail!! 3626 regression tests were failing! 3627 36285/27/2005 3629 Makefile: make all GENERATED files "precious" 3630 lib/io.c, lib/init.c, include/units.h, README: 3631 make MEM_IO work, based on work by Sudarshan Gaikaiwari 3632 Pull io_init() out to init.c 3633 renamed io_input() to io_input_file() 3634 new: io_memfile(), io_skip(), io_input_string(), 3635 io_setfile(), io_mkfile_noclose(), 3636 io_output_string(), io_attached(). 3637 36385/20/2005 3639 new: .cvsignore doc/.cvsignore 3640 36411/3/2005 3642 lib/win32/com.cpp: handle VT_DISPATCH in retvariant() 3643 364412/27/2004 3645 doc/snobol4.1: fix typo/pasteo 3646 364712/14/2004 3648 lib/snolib/getstring.c, include/load.h: 3649 add mgetstring() 3650 lib/win32/com.cpp: 3651 use mgetstring() 3652 36539/30/2004 3654 test/clean.sh: remove *.dat. Thanks to Rafal Sulejman! 3655 36569/28/2004 3657 configure, Makefile2.m4: 3658 install snolib.3 in MAN3DIR 3659 Noticed by Phillip Thomas 3660 36619/17/2004 3662 configure: check for libgdbm_compat 3663 36649/14/2004 3665 configure: cleanup ndbm; use USE_GDBM 3666 Makefile: config.{h,m4} depend on configure 3667 36689/12/2004 3669 lib/snolib.c: include stdio.h first 3670 36719/8/2004 3672 configure: fixes for cygwin, ndbm works 3673 36749/7/2004 3675 configure, lib/snolib/ndbm.c: 3676 add HAVE_{,GDBM_{D,SL}ASH_}NDBM_H 3677 works on wide variety of platforms 3678 36799/6/2004 3680 configure: add --without-ndbm 3681 new lib/snolib/ndbm.c: ndbm interface 3682 pml.h: add DBM_xxx functions 3683 Makefile2.m4: ndbm.o 3684 36859/2/2004 3686 include/handle.h, lib/snolib/handle.c: 3687 return pointer value as handle 3688 lib/snolib/stcl.c: 3689 rationalize function names w/ Tcl_ names: 3690 TCL_{CREATE,DELETE}INTERP 3691 Add suite of OBJ(ect) related functions 3692 (not yet tested) 3693 pml.h: add STCL object functions 3694 36958/31/2004 3696 configure: allow tcl .so's without .a's 3697 seen by Rafal M. Sulejman (from CVS source!) 3698 36998/30/2004 3700 lib/io.c: treat all errors as non-fatal if !ISAFILE 3701 problem seen by Martin Waller w/ Windoze TCP 3702 37038/26/2004 3704 lib/snolib/stcl.c: add back Tk under STCL_USE_TK 3705 configure: add --with-tcl and --without-tk 3706 use $INCDIR more 3707 Makefile2.m4: tweaks for stcl 3708 37098/24/2004 3710 pml.h: add STCL under PML_STCL 3711 lib/snolib/stcl.c: cleanup 3712 lib/snolib/handle.c: fix handle search 3713 37148/23/2004 3715 pml.h: rename COM_UNLOAD to COM_RELEASE 3716 configure: keep quiet in installer grep 3717 lib/win32/com.cpp: ifdef NEED_COGETOBJECT, rename COM_RELEASE 3718 lib/snolib/handle.c: made it work 3719 37208/21/2004 3721 snolib/http.sno: add HTTP.RECL variable 3722 37238/20/2004 3724 new: include/handle.h lib/snolib/handle.c 3725 manage handles 3726 lib/snolib/stcl.c, lib/win32/com.cpp: 3727 convert to use handles 3728 37298/19/2004 3730 snolib/ftp.sno: fix a comment 3731 snolib/http.sno: add HTTP.POST() function 3732 configure: fix broken 6/4/2004 changes 3733 output $(DESTDIR) as prefix 3734 avoid AIX installer, add more names 3735 loop seperately for dir and install prog 3736 37378/12/2004 3738 v311.sil, genc.sno, include/macros.h: 3739 Create new PCOMP[C] SIL operators for pointer comparison. 3740 On some versions of RedHat ES and Fedora Core, dynamic 3741 pointers can be negative! Thankfully Mark Emmer had 3742 found all the necessary places to change for SNOBOL4+ 3743 Sizes are still constrained to be positive signed ints. 3744 37457/19/2004 3746 configure: update for CygWin 1.5.9(0.112/4/2) 3747 lib/win32/com.cpp: use USE_WCHAR_H, NEED_COGETOBJECT 3748 config/win32/mingw.mak: define NEED_COGETOBJECT 3749 37507/10/2004 3751 configure, Makefile2.m4, lib/win32/com.cpp: Support COM under CygWin! 3752 37537/1/2004 3754 config/win32/ntmsvc.mak: add COM 3755 lib/win32/com.cpp: fix for Visual Studio .NET 2003 (VC71) 3756 lib/win32/inet.c: tweak setsockopt() args 3757 37586/23/2004 3759 new lib/snolib/stcl.c: 3760 start of attempt at Tcl/Tk interface 3761 37626/20/2004 3763 pml.h: add COM_GETPROP, COM_PUTPROP, COM_UNLOAD 3764 37656/19/2004 3766 new lib/win32/com.cpp: COM (OLE) Automation 3767 config/win32/mingw.mak: add COM 3768 pml.h: PML_COM support 3769 37706/4/2004 3771 configure: Improvements suggested by Robin Kay 3772 <komadori@gekkou.co.uk>. 3773 3774 autoconf compatibility: Honor CC, CFLAGS, CPPFLAGS, 3775 LDFLAGS, DESTDIR environment variables. 3776 3777 Don't use (Solaris/SysV) /usr/sbin/install -- it's 3778 (way) different. 3779 37805/31/2004 3781 lib/bsd/inet6.c: NOTE: functions ignore "port" arg (OK, not used) 3782 INSTALL: fix 1.0 typos 3783 37843/3/2004 3785 configure: attempt to fix pre-panther socklen_t lossage 3786 version.c: update to 1.0+ 3787 3788**************** release 1.0 (CVS tag REL_1_0) 3789 (11th anniversary of BETA1 release) 3790 37912/18/2004 3792 doc/snobol4.1 doc/snolib.3: ran ispell, update dates, version 3793 README, INSTALL: ran ispell, update version 3794 Switched development from RCS to CVS 3795 Makefile: add syn.c to GENERATED; remove make tar 3796 pkg/{bsd,debian,rpm,solaris}: add packaging files 3797 History: cleanup add RCS tag names, versions 3798 37992/17/2004 3800 lib/bsd/inet.c: add (const void *) cast for MSVC 3801 38022/16/2004 3803 CHANGES: update 3804 configure: fix LP64_NATIVE 3805 38062/5/2004 3807 COPYRIGHT, README: update copyright years 3808 include/dt.h: improve info for functions 3809 lib/io.c: implement MEM_IO; compiles, but not tested 3810 38112/3/2004 3812 lib/{ansi,c99}/spcint.c: check for overflow 3813 configure: fix test for bsd/suspend.c (look for sigmask macro) 3814 38151/29/2004 3816 doc/snobol4.1: fix SSET entry 3817 38181/11/2004 3819 v311.sil: Fix argument processing for LOADed functions: 3820 if there are more actuals than formals, pass extras 3821 without conversion (was looking past end of formal list)! 3822 pml.h: no longer need (,) in HOST prototype (testing above fix) 3823 include/snotypes.h: Add BITFIELDS_SAME_TYPE 3824 gcc 3.3.1 (SuSE Linux) can't handle this! 3825 config/win32/ntmsvc.mak: set BITFIELDS_SAME_TYPE 3826 38271/6/2004 3828 include/snotypes.h: make FFLD packable by MSVC 3829 config/win32/ntmsvc.mak: no longer need NO_BITFIELDS define 3830 383112/23/2003 3832 configure: compile test program to get long/pointer sizes 3833 for LP64 and LP64_native checks 3834 383512/22/2003 3836 timing: use gentoo "emerge" if present 3837 383812/18/2003 3839 INSTALL: update win32 info 3840 config/win32/ntmsvc.mak: add last tested info 3841 384212/9/2003 3843 Built and tested under WinXP using MS Visual Studio 2003 .NET 3844 include/lib.h: use EXPORT() on declarations 3845 include/load.h: SNOEXP() -- import or export, depending on build 3846 lib/win32/inet.c: handle missing SD_BOTH 3847 384811/15/2003 3849 timing: add gentoo-release, *-release, move redhat to end 3850 385111/14/2003 3852 lib/win32/inet.c: add true (from 8/9/2003) 3853 lib/ordvst.c: add consts 3854 config/vms/descrip.mms: add bindresport.obj 3855 tested w/ Compaq C V6.5-001 on OpenVMS Alpha V7.3-1 3856 tested w/ hp C X6.6-329 (GEM 50DA7) for I64 on OpenVMS Alpha V7.3-1 3857 tested under Cygwin, MINGW, DJGPP, AIX, IRIX, SunOS, Solaris, HP-UX 3858 385911/12/2003 3860 configure: add sparc64 3861 Makefile: fix for BSD parallel make, gmake on BSD 3862 Makefile2.m4: wrap regression in subshell for BSD parallel make 3863 386411/6/2003 3865 doc/snobol4.1: add a bit more info on bidirectional "pipe" I/O 3866 386710/9/2003 3868 removed doc/ports.txt 3869 38708/6/2003 3871 doc/porting.ms: add SIL, fix sys.c and inet.c 3872 doc/snobol4.1: fix typo 3873 lib/bsd/inet6.c: add IEEE 1003.1g credit 3874 38757/29/2003 3876 doc/snolib.3: improve a little 3877 doc/*.doc -> doc/*.txt 3878 README: add snolib.{3,0,ps,pdf} 3879 remove ports.doc 3880 s/.doc/.txt/ 3881 Makefile2.m4: remove mention of ports.doc 3882 install load.txt 3883 clean up timing.out requests -- send everything to stderr 3884 Makefile: cleanup 3885 INSTALL: load.txt, porting.txt. paypal 3886 38877/23/2003 3888 new: doc/snolib.3 3889 38907/21/2003 3891 doc/snobol4.1: add BUG: integer overflow not detected 3892 configure: FINITE_C and ISNAN_C not needed (were wrong too) 3893 38947/19/2003 3895 doc/snobol4.1: document /udp!! 3896 38977/15/2003 3898 new: test/popen(2).{ref,sno}: popen tests 3899 Makefile2.m4: make snobol4 depend on tests.in 3900 timing: tweak for FreeBSD/Alpha 3901 39027/14/2003 3903 lib/snolib/{exp,tan}.c: RETFAIL if result is !finite 3904 39057/11/2003 3906 doc/snobol4.1: talk about CASE & UTF-8 3907 39087/9/2003 3909 include/lib.h lib/bsd/inet(6).c lib/io.c lib/win32/inet.c: add 3910 INETxxx flags/magic paths: broadcast reuseaddr 3911 dontroute oobinline keepalive nodelay 3912 39137/8/2003 3914 CHANGES: update 3915 doc/snobol4.1: document 8th bit handling 3916 39177/7/2003 3918 gensyn.sno: treat all bytes with 8th bit set as ALPHA on ASCII systems 3919 allows UTF-8 encoded characters, and national character sets 3920 to used in labels and identifiers! 3921 new: test/8bit2.{sno,ref}: 8bit id/label test 3922 39237/6/2003 3924 INSTALL: update Win32 UDP info 3925 configure, Makefile2.m4: 3926 move SNOLIB_DEFINES, PREFIX, BINDIR, MANDIR, MAN1DIR, 3927 SNOLIB_DIR to configure 3928 seperate greps for socketpair 3929 39307/5/2003 3931 README: update copyright dates, add logic.sno 3932 INSTALL: update timing e-mail address, add SNOBOL4 listserv info URL 3933 Makefile2.m4: add SNOLIB_FILES variable, add README to SNOLIB_FILES 3934 update timing e-mail address 3935 lib/djgpp/osinit.c: fix WATTCP compilation 3936 doc/snobol4.1: updated SEE ALSO 3937 39387/4/2003 3939 COPYRIGHT: update year 3940 Makefile: removed SMALL_SNO commands 3941 INSTALL: update VMS and Win32 info, gcc/lp64 info 3942 config/vms/descrip.mms: fix DECC4 support 3943 add NEED_BCOPY,NEED_BZERO,SOCKLEN_INT,HAVE_UNIXIO_H 3944 config/vms/config.h: add SOCKLEN_INT ifdef 3945 lib/io.c: add unixio.h 3946 config/win32/config.h lib/ansi/spcint.c lib/bsd/inet.c 3947 lib/bsd/inet6.c lib/bsd/popen.c lib/djgpp/osinit.c 3948 lib/{c99,generic,longlong}/intspc.c 3949 lib/{dummy,hpux,next,unix98,win32}/load.c 3950 lib/generic/{execute,popen}.c lib/init.c 3951 lib/{posix,vms}/sys.c lib/{posix,vms,win32}/tty.c 3952 lib/snolib/retstring.c lib/snolib/system.c 3953 lib/vms/getredirect.c lib/vms/popen.c lib/vms/sys.c 3954 include/{bindresvport,macros,snotypes,str}.h: ran comdef 3955 39567/3/2003 3957 configure: check netinet6/in6.h for HAVE_SOCKADDR_IN6 3958 always set HAVE_SOCKADDR_IN6, for serv.c 3959 lib/snolib/serv.c: set sin*.sin*_family fields 3960 config/vms/descrip.mms: fix osopen source path 3961 vms7.3 TCP needs bindresvport.obj 3962 lib/vms/osopen.c: use str.h for strcmp 3963 main.c: comdef fix (leave spaces) 3964 include/vars.h: use HAVE_WINSOCK_H 3965 39666/26/2003 3967 configure: defend against __vfork, look for popen() shell 3968 39696/25/2003 3970 doc/snobol4.1: add inet6 for SERV_LISTEN() 3971 configure: check for paths.h, vfork 3972 lib/bsd/popen.c: use vfork.h 3973 39746/24/2003 3975 doc/snobol4.1: document SERV_LISTEN(), update HOST() output, date 3976 add DIAGNOSTICS section, more AUTHORS 3977 lib/snolib/serv.c: update for inet6 3978 39796/22/2003 3980 new: lib/bsd/popen.c 3981 configure: check for socketpair, use bsd popen.c 3982 Makefile2.m4: add popen 3983 doc/snobol4.1: document bidirectional pipes 3984 39856/21/2003 3986 doc/snobol4.1: document /dev/tty and /dev/null magic 3987 39886/19/2003 3989 doc/porting.ms: update 3990 new: lib/{msdos,vms}/osopen.c 3991 config/vms/{config.h,descrip.mms}: add OSDEP_OPEN, osopen.obj 3992 config/win32/{borland,mingw,ntmsvc}.mak: add osopen 3993 config/win32/config.h: OPDEP_OPEN 3994 include/lib.h: add osdep_open 3995 39966/18/2003 3997 config/djgpp/config.h: SOCKLEN_T 3998 configure: flushed HAVE_STDARG_H 3999 doc/porting.ms: update 4000 40016/16/2003 4002 lib/posix/tty.c: add VALID test 4003 new: lib/win32/term.c 4004 config/win32/{borland,mingw,ntmsvc}.mak: use win32/term.c 4005 40066/15/2003: 4007 timing: add hwinfo, sw_vers for Darwin/NS 4008 lib/win32/tty.c: works! 4009 config/win32/config.h: WIN32_LEAN_AND_MEAN, TTY_READ_RAW 4010 config/win32/{borland,mingw,ntmsvc}.mak: use win32/tty.c 4011 40126/8/2003: 4013 configure: always set SOCKLEN_T 4014 config/win32/borland.mak: cleanup; use config\win32 4015 config/win32/ntmsvc.mak: cleanup 4016 config/win32/config.h: SOCKLEN_T 4017 genc.sno: remove config.h 4018 parms.h: include config.h, move system includes first 4019 lib/snolib/{delete,fork,host,sprintf}.c: move system includes first 4020 lib/snolib/system.c: use stdlib.h 4021 lib/auxil/bindresvport.c, lib/snolib/serv.c: use SOCKLEN_T 4022 40236/6/2003: 4024 configure: flushed $SYS, config.guess refs, pass HWNAME, OSNAME 4025 lib/generic/sys.c: flushed CONFIG_GUESS 4026 include/snotypes.h: flused SIL_FUNC_PROTO 4027 40286/5/2003 4029 new: bindresvport.h 4030 configure: SOCKLEN_T 4031 lib/bsd/inet.c: use bindresvport.h, OLD_UCX_INCLUDES, netdb.h! 4032 lib/bsd/inet6.c: use bindresvport.h 4033 lib/auxil/bindresvport.h: use bindresvport.h, SOCKLEN_T 4034 config/vms/descrip.mms: 4035 only use OLD_UCX_INCLUDES on VAXC? 4036 move stuff to UCXDEFS 4037 use bsd/inet.c!! 4038 config/vms/config.h: add SOCKLEN_T 4039 40406/3/2003 4041 config/{djgpp,win32}/config.h: NEED_SOCKLEN_T 4042 config/vms/descrip.mms: OLD_UCX_INCLUDES 4043 lib/auxil/bindresvport.c: OLD_UCX_INCLUDES 4044 40456/2/2003 4046 configure: NEED_SOCKLEN_T, AUX_BINDRESVPORT, Tru64 v5 crap 4047 lib/auxil/bindresvport.c: use socklen_t again 4048 40496/1/2003 4050 include/lib.h: remove bindresvport proto 4051 lib/bsd/inet.c: add bindresvport proto, NULL arg 4052 40535/31/2003 4054 include/h.h: protect TRUE/FALSE, ran comdef 4055 lib/bsd/inet6.c: move bindresvport_sa decl 4056 40575/29/2003 4058 configure: HAVE_SOCKADDR_IN6, NEED_BINDRESVPORT_SA 4059 include/snotypes.h: remove mstime() 4060 include/str.h: s/__/_/ 4061 lib/bsd/inet.c: NEED_BINDRESVPORT_SA 4062 lib/win32/inet.c: bindresvport() 4063 lib/{hash,pair,pat,top}.c: move STATIC ifdefs up to top 4064 lib/auxil/bindresvport.c: HAVE_SOCKADDR_IN6, HAVE_WINSOCK_H 4065 lib/djgpp/osinit.c: bindresvport 4066 config/vms/descrip.mms, include/lib.h: NEED_POPEN 4067 config/win32/{borland,mingw,ntmsvc}.mak: bindresvport.o(bj) 4068 config/djgpp/config.h: NEED_BINDRESVPORT 4069 config/djgpp/Makefile: bindresvport.o 4070 40715/23/2003 4072 flushed dummy/rresvport.c 4073 config/vms/descrip.mms: UCXLIB, UCXOBJ, flush rresvport 4074 config/win32/{borland,mingw,ntmsvc}.mak: flush rresvport 4075 lib/vms/inet.c: punt on bindresvport() 4076 lib/win32/inet.c: punt on bindresvport() 4077 configure: define NEED_SOCKLEN_T 4078 40795/22/2003 4080 configure, Makefile2.m4: 4081 use bindresvport[_sa]() instead of rresvport[_af]() 4082 new: lib/auxil/bindresvport.c 4083 lib/bsd/inet(6).c: switch from rresvport(_af) to bindresvport(_sa) 4084 40855/20/2003 4086 new: lib/vms/load.c: first cut at VMS LOAD() support!! 4087 new: lib/bsd/inet6.c: use getaddrinfo() 4088 new: lib/auxil/rresvport_af.c 4089 configure: detect getaddrinfo(); use inet6.o 4090 test for ipv6 first, add string(s).h comments 4091 config/vms/descrip.mms: more cleanup, add load.c 4092 use native popen(), bzero(), bcopy(), unlink() 4093 use bsd/inet.c, posix/mstime.c 4094 compiles without implicit warnings w C 6.5 on VMS 7.3!! 4095 config/vms/config.h: add NEED_RRESVPORT_DECL, PML comment 4096 pml.h: use PMLFUNC2 for renamed functions 4097 include/lib.h: add getredirection(), popen(), pclose(), rresvport() 4098 lib/init.c: cleanup, remove dynamic() extern 4099 lib/io.c: remove externs for term_input(), {udp,tcp}_open(), popen() 4100 lib/vms/getredirect.c: cleanup: use stdlib.h, lib.h 4101 lib/vms/sys.c: use starlet.h for system prototypes 4102 lib/{dummy,vms}/tty.c: add tty_suspend() 4103 config/win32/config.h: add NEED_RRESVPORT_DECL 4104 config/djgpp/config.h: add HAVE_STRINGS_H 4105 Makefile2.m4: add rresvport_af.o, remove finite.o 4106 41075/17/2003 4108 configure: more HP-UX/ia64 tuning 4109 INSTALL, config/vms/{config.h,descrip.mms} 4110 update for Compaq C V6.5-001 on OpenVMS Alpha V7.3-1 4111 config/vms/descrip.mms, lib/io.c, doc/porting.ms: 4112 s/NO_OFF_T/NEED_OFF_T/ 4113 41145/16/2003 4115 timing: add eval for debian 3.0 4116 configure: more HP-UX/ia64 tuning 4117 INSTALL: update --longlong, explain ILP32 4118 include --lp64 caveat for HP-UX 4119 config/{vms,win32}/config.h: HAVE_STRING_H 4120 lib/win32/sys.c: detect WinServer2003, Win95OSR2, Win98SE 4121 41225/15/2003 4123 configure, include/str.h: 4124 handle HP-UX IA64 like PA-RISC 4125 rework string function handling 4126 add HAVE_STRING(S)_H 4127 s/USE_OWN/NEED/ 4128 41295/14/2003 4130 lib/hpux/load.c: remove unused variables 4131 41325/5/2003 4133 include/str.h: always use memcmp if ANSI_STRINGS (Solaris 2.4) 4134 41354/30/2003 4136 configure: KERNEL_BITS fix for HP-UX 10 (and earlier) 4137 up maxmem for full optimization of data_init.c on AIX 4138 41394/24/2003 4140 Cleanup misc ports; 4141 lib/{c99,generic,longlong}/spcint.c lib/generic/spreal.c: include stdio 4142 lib/{bsd,dummy,hpux,next}/load.c: include stdio.h and lib.h 4143 lib/{dummy,dos,vms,win32}/tty.c: include lib.h 4144 lib/{vms,win32}/exists.c: include stdio.h,h.h,snotypes.h,lib.h 4145 lib/{vms,win32}/inet.c: lib.h, use str.h for bcopy 4146 h.h: add NEED_CONST; Tru64 5.0 also has __STDC__ == 0 4147 INSTALL: add --double and --longlong doc 4148 41494/23/2003 4150 Second round of prototype changes (compilers other than gcc); 4151 Makefile: add static.h (generated by genc.sno) 4152 configure: fix strings.h test 4153 genc.sno: output static prototypes to static.h2; use ret_t 4154 upcase library call names 4155 v311.sil: upcase library routines which take descrs or specs 4156 rename ENFILE to ENDFIL to avoid Unix errno collision 4157 globals, procs: ENDFIL 4158 main.c: always include macros.h, for NORET; use NORET for BEGIN call 4159 include/macros.h: define macros for upcase versions of lib routines 4160 cast args, call functions; add NORET 4161 parms.h: remove NORET, include static.h 4162 include/snotypes.h: add ret_t 4163 include/str.h: protect index/rindex against multiple definitions 4164 lib/bal.c: use NORET 4165 lib/init.c: use NORET for SYSCUT() call 4166 lib/io.c: use NORET for UNDF() call; add comments 4167 lib/bsd/inet.c: reverse order of macros and snotypes (for NORET) 4168 lib/generic/execute.c: include unistd.h before stdio.h 4169 lib/snolib/host.c: include unistd.h before stdio.h 4170 41714/21/2003 4172 include/snotypes.h: create ptr_t; use void * to avoid gcc3 warnings 4173 gendata.sno: use (ptr_t) instead of (char *) 4174 4175 Start(!!) cleanup for -Wimplicit warnings; 4176 lib/unix98/load.c: include stdio.h, lib.h, RTLD_LAZY cleanup 4177 lib/{dummy,vms,win32}/tty.c: flush tty_{sav,restor}e 4178 include/lib.h: add {execute,exists,suspend,tcp,tty,term,sys,version}.c 4179 entries 4180 add io_sseek(), io_finish(), io_closeall(), 4181 io_findunit(), io_getfp(), io_mkfile(), apdsp() 4182 remove io functions declared by libret.h 4183 fix getbal() prototype (was bal, returning void!) 4184 fix pad(), reverse(), substr() return types 4185 fix unit types for io_{printf,endfile,backspace,rewind} 4186 lib/snolib/{chop,cos,delete,exp,log,ord,sin,sqrt,tan}.c: return type! 4187 lib/snolib/{exit,,sset}.c: include lib.h, stdio.h 4188 lib/snolib/file.c: include lib.h, stdio.h; rename entry point! 4189 lib/snolib/fork.c: add system headers, return type 4190 lib/snolib/host.c: add system headers, lib.h, stdio.h 4191 lib/snolib/findunit.c: include stdio.h, lib.h, add return type 4192 lib/snolib/serv.c: add system headers, lib.h, stdio.h, flushall arg 4193 lib/snolib/{rename,sprintf}.c: add stdio.h 4194 pml.h: rename FILE() entry point to FILE2() 4195 lib/date.c: include stdio.h, lib.g; fix Y2K bug w/ old date!! 4196 lib/posix/tty.c: include lib.h for proc_suspend() 4197 lib/stream.c: remove libret.h 4198 remove extra arg to clertb -- unused for almost 10 years!! 4199 include/syntab.h: move stream() declaration here from libret.h 4200 enable any(), clertb(), plugtb() prototypes 4201 remove extra arg from clertb()! 4202 lib/bal.c: include lib.h for getbal() prototype 4203 parms.h: add includes 4204 isnobol4.c compiles clean w/ -Wimplicit on RH7.3, FreeBSD4.7 4205 4206 lib/bsd/inet.c: add includes 4207 lib/init.c, main.c: include proc.h 4208 lib/io.c: include lib.h, proc.h; ignore HAVE_STDARG_H; use __STDC__ 4209 version.c: include lib.h 4210 new include/gen.h: generated (init) functions 4211 main.c: include lib.h, gen.h 4212 data_init.c: include gen.h 4213 genc.sno: output full prototypes to proc.h 4214 gensyn.sno: output include gen.h 4215 lib/{bsd,posix}/dynamic.c: include lib.h (et al) 4216 lib/generic/{expops,intspc}.c: include lib.h 4217 lib/{ansi,bsd,dummy,generic,msdos,posix,vms,win32}/mstime.c 4218 lib/{djgpp,generic,posix,vms,win32}/sys.c: lib.h &c 4219 lib/{hash,lexcmp,ordvst,pat,pair,pml,realst,replace,top,tree}.c 4220 {bsd,generic,posix}/suspend.c 4221 {posix,vms}/term.c generic/ex{ists,execute}.c: lib.h 4222 lib/snolib/getstring.c: load.h 4223 lib/snolib/retstring.c: load.h, stdio.h 4224 new include/str.h: string includes/prototypes 4225 include/h.h: remove index, bcmp defines 4226 include/macros.h: move bcmp, bcopy defines to str.h 4227 parms.h: use str.h 4228 lib/auxil/getopt.c,lib/djgpp/osinit.c,lib/bsd/inet.c, 4229 lib/{date,init,ordvst,pml,realst,str}.c, 4230 lib/snolib/{host,[gr]etstring,serv,sprintf}.c 4231 lib/{generic,posix,vms,win32}/sys.c, 4232 lib/{bsd,hpux,next,unix98,win32}/load.c: use str.h 4233 lib/{ansi,c99,generic,longlong}/{spcint,intspc}.c, 4234 lib/{generic,ansi}/spreal.c: lib.h str.h 4235 lib/generic/execute.c: unistd.h 4236 configure: only use strings.h if it contains both index and strcmp 4237 (GNU/Linux version is minimal) 4238 compiles cleanly (except isnobol4.c loops & snolib functions) 4239 w/ gcc -Wmissing-prototypes!! 4240 42411/13/2003 4242 doc/load.doc: cleanup 4243 lib/next/load.c: use snolib.so on Darwin 4244 INSTALL: cleanup 4245 42461/12/2003 4247 config/win32/config.h: add missing endif 4248 INSTALL: update cygwin info 4249 425010/29/2002 4251 lib/snolib/logic.c: fix for AXP/VMS compilation 4252 lib/vms/sys.c: fix 4253 42548/20/2002 4255 lib/djgpp/osinit.c: replace with Burkhard's version! 4256 (He says mine doesn't work) 4257 lib/io.c: only flag STD{IN,OUT,ERR}_FILENO's w/ NOCLOSE 4258 README: updated, added URL 4259 doc/snobol4.1: added http:// to URL 4260 42616/13/2002 4262 genc.sno: pass CPP directives! (3/3/2002) 4263 42646/6/2002 4265 v311.sil include/macros.h lib/init.c doc/snobol4.1: 4266 Add '-S' option for enlarging interpreter stack. 4267 ** 1% speed penalty for genc.sno ** 4268 timing.sno lib/snolib/host.[ch]: 4269 add HOST_ISTACK_SIZE 4270 42714/25/2002 4272 configure, lib/next/load.c: 4273 add TRY_UNDERSCORE to next/load.c for Darwin 4274 42754/19/2002 4276 lib/next/load.c: check NSLinkModule() return 4277 add comments 4278 42794/12/2002 4280 lib/next/load.c: remove unused variable & label 4281 42824/2/2002 4283 lib/snolib/host.h: fix comment typo 4284 42853/23/2002 4286 include/h.h: add default {IM,EX}PORT macros 4287 include/load.h: add io_closeall, io_mkfile; use IMPORT macro 4288 lib/djgpp/osinit.c: add io_{findunit,closeall,getfp,mkfile} 4289 lib/io.c: use EXPORT macro for io_{findunit,closeall,getfp,mkfile} 4290 lib/snolib/[gr]etstring.c: use EXPORT macro 4291 config/win32/config.h: add IMPORT & EXPORT macro declarations 4292 42933/21/2002 4294 Fixes for mingw build. 4295 lib/win32/inet.c: remove dangling saweol 4296 config/win32/mingw.mak: add a missing $ 4297 doc/porting.ms: add HAVE_OS_INIT 4298 README: add text from COPYRIGHT 4299 43003/20/2002 4301 clean DJGPP build w/ DXE2, WATTCP. Tested DXE2. 4302 lib/djgpp/osinit.c: cleanup 4303 config/djgpp/Makefile: use install.bat 4304 config/djgpp/config.h: fix HAVE_OS_INIT 4305 config/win32/{borland,mingw,ntmsvc}.mak: add make SRCDIR, make install 4306 doc/load.doc: DJGPP/DXE2, dllwrap info 4307 new: config/install.bat 4308 43093/17/2002 4310 load.h: add prototypes for getstring, retstring, 4311 io_findunit, io_getfp 4312 43133/16/2002 4314 configure: make gcc -O3 the default, use -fno-inline-functions 4315 43163/15/2002 4317 config/djgpp/Makefile: fix for WATTCP build 4318 add HAVE_{WATTCP,DXE2} 4319 add comments 4320 config/djgpp/config.h: add defines under HAVE_{WATTCP,DXE2} 4321 add FOLD_HOSTNAMES 4322 lib/djgpp/sys.c: add +DXE2 and +WATTCP to sys string 4323 lib/djgpp/osinit.c: add lib.h, comments 4324 lib/bsd/inet.c: change WATTCP_DOS to FOLD_HOSTNAMES 4325 43263/14/2002 4327 configure: add --bindir= 4328 document --mandir= 4329 show --prefix default 4330 doc/load.doc: add ArnaudRecipes link 4331 43323/13/2002 4333 version.c: version 0.99.44+ 4334 configure: add --mandir= 4335 Makefile2.m4: add MAN1DIR 4336 43373/12/2002 4338 lib/init.c: fix VMS getredirection() call 4339 43403/9/2002 4341 Makefile: sh clean.sh 4342 43433/8/2002 4344 timing: show AIX memory/cache conf (thanks to info from 4345 http://www.fortran-2000.com/ArnaudRecipes/hardwareinfo.html) 4346 Makefile: add lint 4347 43483/6/2002 4349 Makefile2.m4: add "lint" 4350 Makefile: remove *.ln 4351 4352**************** released 0.99.44 (RCS tag BETA8) 4353 43543/2/2002 4355 version.c: update to 0.99.44 4356 timing: do an ls -l of Entries file 4357 43583/1/2002 4359 config/djgpp/Makefile: tested, make DXE loading optional 4360 config/djgpp/config.h: remove unneeded stuff! 4361 lib/djgpp/sys.c: HOST() support for DJGPP 4362 lib/vms/getredirect.c: defend against argc==0 4363 v311.sil: remove an empty RCALL label list 4364 43652/28/2002 4366 configure: force -n32 compiler IRIX 32-bit compilations 4367 43682/22/2002 4369 genc.sno, v311.sil: XINCLD 3-way return to handle multiple includes 4370 lib/io.c: io_include() 3-way return 4371 defend against path overflow 4372 cleanup, add comments, type member 4373 include/libret.h: io_include_ret 4374 test/line.{ref,sno}: test multiple include handling 4375 new: test/include.{ref,sno}: test includes w/o -line 4376 43772/21/2002 4378 configure: seperate -Wuninitialized from OPT 4379 lib/win32/inet.c: cleanup; read text past eol, handle CR 4380 lib/io.c: fix unix inet I/O 4381 43822/20/2002 4383 install-sh: make cpprog the default 4384 doc/snobol4.1: add www.snobol4.org 4385 lib/init.c: fix -P 4386 43872/19/2002 4388 new: COPYRIGHT 4389 43902/18/2002 4391 configure: use -fomit-frame-pointer for --fast w/ gcc 4392 report glibc version to stderr, config.m4 4393 default compilation includes -Wuninitialized 4394 always compile with -Wunused 4395 v311.sil: compile cleanly with gcc -Wunused; 4396 add entry labels where needed; add XECODE op 4397 removed unused labels and unused code!! 4398 include/macros.h: ENTRY() no longer drops a label! 4399 genc.sno, gendata.sno: use new XECODE op 4400 lib/unix98/load.c: only declare found: label if needed 4401 44022/16/2002 4403 configure: add IRIX compiler flags; merge IRIX and IRIX64 4404 check for /sbin/install 4405 Makefile: remove timdir.* in cleanmostly 4406 new lib/djgpp/osinit.c: djgpp os_init() 4407 lib/init.c: add os_init() call 4408 new config/djgpp/{config.h,Makefile} 4409 removed config/djgpp/ misc... 4410 44112/15/2002 4412 config/win32/{borland,ntmsvc}.mak: clean up, bring in to sync 4413 config/win32/config.h: update 4414 lib/snolib/getenv.c: needs equ.h 4415 44162/14/2002 4417 Makefile: go back to "cvs login" 4418 Compile under MINGW (Minimal GNU for Windoze) http://mingw.org 4419 config/win32/config.h: only define __STD__ if not defined 4420 add defines for popen, pclose 4421 no longer NEED_POPEN_DECL? 4422 lib/snolib/system.c: needs equ.h 4423 lib/win32/inet.c: remove BORLAND ifdef 4424 lib/win32/sys.c: add Win{98,ME,2K,XP}; display unknown platforms 4425 strip trailing spaces from szCSDVersion 4426 lib/win32/tty.c: add HANDLE casts 4427 config/win32/ntmsvc.mak: put -Iconfig\win32 first 4428 intspc moved to ansi/ 4429 add ord.obj 4430 removed lib/win32/popen.c, config/borland directory 4431 new config/win32/mingw.mak, config/win32/borland.mak 4432 44332/13/2002 4434 timing: use /usr/bin/oslevel on AIX 4435 44362/12/2002 4437 lib/snolib/host.[ch]: changed HOST_SYSTEM to HOST_SYSCMD 4438 lib/snolib/host.c: no longer need to set RETTYPE before RETINT() 4439 handle REAL and integers encoded as strings 4440 include/load.h: set RETTYPE in RETNULL 4441 lib/snolib/{delete,file,rename}.c: include equ.h for RETNULL 4442 doc/snobol4.1: HOST() changes 4443 CHANGES: HOST() changes 4444 44452/7/2002 4446 snolib/{file,ftp,http,smtp,tcp,url}.sno: s/C-MAINBOL/CSNOBOL4/ 4447 doc/porting.ms: undocument DCMP_BYTES (never needed?) 4448 lib/init.c: display build date 4449 CHANGES: add -v 4450 INSTALL: update --no-gcc --lp64 4451 44522/6/2002 4453 new install-sh (X11 install script) 4454 configure: find install program/script, set INSTALL 4455 Makefile2.m4: use INSTALL for make install 4456 44572/5/2002 4458 configure: improve help/usage output 4459 deal with cc==gcc and --no-gcc 4460 lib/snolib/ord.c: fix comments; fail on null string 4461 lib/snolib/environ.c: include config.h 4462 lib/bsd/suspend.c lib/generic/suspend.c lib/posix/suspend.c: config.h 4463 new test/ord.{sno,ref} test ORD() function 4464 test/tests.in: add ord.sno 4465 44662/4/2002 4467 configure: get along without config.guess 4468 add more non-gcc compiler opt(timizat)ions 4469 add --fast 4470 Use -O2 w/ SunOS4 cc (don't optimize data_init.c) 4471 timing: check if config.guess exists 4472 removed config.guess 4473 genc.sno: handle 3-way LEXCMP (used in SORT) 4474 Makefile2.m4: include h.h in build.c for non-ansi compilers 4475 cc-M: perform basename on object files 4476 44771/30/2002 4478 configure: don't compile data_init.c w/ -O2 on Darwin 4479 add --double; add NO_BITFIELDS variable 4480 rework LP/LONGLONG/NO_BITFIELDS 4481 use ~(VFLD_T)0 for SIZLIM 4482 CHANGES, INSTALL: add --double 4483 genc.sno: flush D_RV() function, use pre-existing RV()! 4484 44851/28/2002 4486 INSTALL: ran ispell, C-MAINBOL -> CSNOBOL4 4487 README, History: C-MAINBOL -> CSNOBOL4 4488 configure: output explicit OPT= if NO_OPT 4489 44901/27/2002 4491 Makefile2.m4: install equ.h 4492 include/load.h: always set RETTYPE in RET{INT,REAL} macros 4493 lib/{chop,cos,exp,fork,findunit,log,serv,sin,sqrt,sset,tan,ord}.c: 4494 include equ.h 4495 doc/load.doc: describe LA_STR_{PTR,LEN} 4496 44971/26/2002 4498 v311.sil: set MAXLNGTH to SIZLIM; increase FNLIST space to 40 slots 4499 CHANGES: mention MAXLNGTH 4500 lib/hash.c: defend against Sun compiler bug 4501 Makefile: fix spotless, comment cleanup options 4502 rename clean to cleanmostly 4503 rename distclean to clean 4504 replaced make tar; removed TAR, G1 (reuse G2) 4505 lib/snolib/logic.c: use pointers to const for inputs 4506 handle bases upto 36; no longer use strtol(), getstring() 4507 include/load.h: make LA_STR_PTR() return ptr to const 4508 config/vms/descrip.mms: add logic; move defines to config.h 4509 config/win32/ntmsvc.mak: add logic; move defines to config.h 4510 config/borland/borlandsnob.mak: add logic; mov defines to config.h 4511 config/djgpp/{borlandsnob.mak,mak1i.bat}: add logic 4512 new: config/{vms,borland,win32}/config.h 4513 45141/25/2002 4515 doc/porting.ms: update vfld/NO_BITFIELDS; add SIZLIM data models 4516 include/snotypes.h: drop default SIZLIM back to 0x7fffffff 4517 configure: redefine SIZLIM to 0xffffffff if using 64-bit INT_T 4518 add --no-bitfields 4519 INSTALL: document --no-bitfields 4520 timing: move psrinfo to generic location (SunOS5 and Tru64 v5) 4521 new: test/test.dump.sh: massage MAXLNGTH output 4522 test/tests.in: use "dump" script for a.sno, dump.sno 4523 test/{a,dump}.sno: massage for "dump" test script 4524 45251/24/2002 4526 genc.sno: rename ENTER to ENTRY, flush ';' and label 4527 avoid cast and parens for integers in SETAC 4528 avoid parens for simple constants for SETAC 4529 saves 4094 bytes in snobol4.c 4530 (7928 with yesterday's changes) 4531 include/macros.h: rename ENTER to ENTRY, output label 4532 Makefile: don't have Makefile2 depend on GENERATED files 4533 move GENERATED to before Makefile2 4534 add "make tidy" 4535 45361/23/2002 4537 timing: add psrinfo, sysDescr for OSF/1 4538 use ARGS when running timing.sno 4539 doc/ports.doc: last of old reports! add new ones 4540 genc.sno: clean up output (snobol4.c is 3838 bytes smaller) 4541 45421/22/2002 4543 lib/snolib/logic.c: cleanup 4544 v311.sil: make LABEL() honor case folding 4545 add experimental FUNCTION() predicate 4546 new: test/function.{sno,ref} 4547 test/tests.in: add function.sno 4548 test/label.{sno,ref}: update for case folding 4549 globals: add FUNCTN 4550 gensyn.sno: use ALPHA and ALPHANUM variables; fix ALPHANUM! 4551 doc/ports.doc: update! 4552 CHANGES: updated 4553 45541/21/2002 4555 v311.sil: add LABEL() and VDIFFER() functions 4556 updated Table of Contents 4557 globals: add LABEL and VDIFFR 4558 doc/snobol4.1: document LABEL() and VDIFFER() 4559 do some bolding 4560 new: test/{label,viffer}.{sno,ref} 4561 test/tests.in: add label.sno, vdiffer.sno 4562 timing: if 00README.CVS exists, display CVS/Entries 4563 new snolib/logic.sno, lib/snolib/logic.c 4564 pml.h: add LOGIC (but not prototype) 4565 Makefile2.m4: fix install (VERS/pv) 4566 include/load.h: add LA_STR_{PTR,LEN} 4567 45681/20/2002 4569 started logic.c 4570 45711/19/2002 4572 Makefile2.m4: add star bars 4573 45741/18/2002 4575 configure, INSTALL: add --no-opt 4576 gensyn.sno: shake off dust; use TERMINAL, SUBSTR() 4577 use CHARSET, own ORD() function to allow bootstrapping 4578 take input file from command line 4579 Makefile: pass right input file to gensyn.sno! 4580 doc/Makefile: rename porting.doc to porting.txt 4581 add ALL, PORTING variables 4582 make snobol4.pdf (by default) 4583 add "make porting" 4584 add "make clean" 4585 doc/snobol4.1: update LOAD(), charset discussions 4586 v311.sil: fix compiler syntax error pointer display 4587 fix internal error trying to compile " ()(" 4588 45891/17/2002 4590 INSTALL: add more --add-opt= discussion 4591 CHANGES: updated 4592 timing: show History RCSID 4593 v311.sil: up hash table size to 8192, define shift factor (OBSFT) 4594 fix lexical comparison function optimizations; add to index 4595 test/lexcmp.{sno,ref}: new version -- test null strings 4596 lib/hash.c: Use Bob Jenkins' hash function; real assention value 4597 5% decreases in genc.sno compile & run times 4598 45991/16/2002 4600 Makefile: use $(CC) to build bsdtsort 4601 INSTALL: note OPT defaults to -O2 with gcc 4602 enhance --add-opt= and --opt= discussions 4603 ask for gifts 4604 46051/15/2002 4606 configure: 4607 renamed autoconf to configure 4608 retabbed 4609 output to config.m4 explicitly 4610 added --debug option 4611 rework option processing; always m4 quote values 4612 add --add-define to usage 4613 add OPT variable; use -O2 for gcc 4614 Makefile: remove autoconf from kit 4615 rework tsort comments 4616 move tools to top 4617 added pkg to kit 4618 timing: check if FREQ is non-empty; check for 00README.CVS 4619 renamed lib/borland to lib/msdos 4620 config/borland/borlandsnob.mak: renamed lib/borland to lib/msdos 4621 config/win32/ntmsvc.mak: renamed lib/borland to lib/msdos 4622 doc/load.doc: update, mention dt.h 4623 46241/14/2002 4625 Makefile: use find | xargs for "make clean"; catch CVS .# files 4626 lib/snolib/host.h: update comments for Catspaw functions 4627 snolib/spitbol.sno: add aliases for HOST() functions 4628 46291/13/2002 4630 new: 00README.CVS 4631 new: bsdtsort.c 4632 Makefile: use bsdtsort 4633 Makefile2.m4: remove pv reference 4634 lib/unix98/load.c: remove NO_UNDERSCORE ifdef 4635 autoconf: set TRY_UNDERSCORE directly; set for darwin 4636 doc/snobol4.1: updated 4637 doc/load.doc: updated 4638 46391/12/2002 4640 lib/init.c: take -d and -P in descriptors (again) 4641 add showk(), rework p() function 4642 make -v display just version 4643 README: add host.sno 4644 INSTALL: update 4645 46461/10/2002 4647 autoconf: split generated/on lines 4648 46491/9/2002 4650 new: lib/snolib/host.h -- HOST() function codes 4651 lib/snolib/host.c: use host.h, handle arbitrary string "codes" 4652 add pmstack, dynamic region size functions 4653 add char bits 4654 new: host.awk -- create host.sno from host.h 4655 timing, timing.sno: use host.sno, report GC's 4656 Makefile2.sno: add GENSNOLIB for host.sno installation 4657 lib/init.c: allow NDYNAMIC override, add PSSIZE, allow override 4658 accept 'm' suffix on region sizes 4659 accept -v for version 4660 globals for pmstack, dynamic region size functions 4661 46621/8/2002 4663 doc/Makefile: use groff -Thtml 4664 46651/7/2002 4666 test/tests.in: add crlf.sno 4667 test/crlf.{sno,ref}: program and data with CR/LF at end of line 4668 46691/6/2002 4670 lib/io.c: toss CR's for DOS files transferred in BINARY mode 4671 or on Cygwin for files transferred in ASCII mode! 4672 Makefile: get tsort.sno from parent directory 4673 v311.sil, globals, procs: rename CON to CONCAT for Cygwin build 4674 timing: move cygwin EXT check to top; fix blank lines 4675 autoconf: add --no-inline; rework largefile code again: add USE_FLAGS 4676 4677Clean builds on: SunOS 4.1.4; Solaris 2.4, 2.5.1, 2.6, 7, 8 4678 FreeBSD 3.4, 4.4; OSF1/DU/Tru64 3.2, 4.0; IRIX 6.2, 6.5 4679 Darwin 5.1 (MacOS X); NetBSD/i386 1.5ZA; Cygwin 1.3.3 4680 HP-UX 10.20, 11.0; AIX 4.3; RH Linux 5.1, 6.0, 7.0, 7.2 4681 46821/5/2002 4683 timing: on HP-UX, try getconf MACHINE_MODEL if "model" cmd not found 4684 autoconf: use XBS5_LP64_OFF64_{C,LD}FLAGS on IRIX for --lp64 4685 set XBS5_MODEL on AIX if using native compiler; LFS_CFLAGS 4686 is not supported. Don't try to turn on large 4687 file support under lp64 compilations. Save 4688 extra large file getconf values using 4689 ADD_OPT() 4690 allow --lp64 builds under AIX (not tested); set ARFLAGS 4691 Darwin: alias "GT" (conflicts with curses global?) 4692 Makefile2.m4: use ARFLAGS for AIX lp64 4693 lib/ordvst.c: remove an old comment 4694 46951/4/2002 4696 autoconf: canonicalize "using" messages to lowercase 4697 make LARGEFILE checks glibc aware, add --no-largefile back! 4698 update for Darwin (cc define __GNUC__ but not __gcc__) 4699 get right path for mach-o/dyld.h (dlopen available) 4700 add LDFLAGS for libdl 4701 add HAVE_STDARGS_H check -- Darwin varargs is broken? 4702 timing: remove CCVERS, show build.c contents 4703 grep for Id in timing, timing.sno 4704 clean up BSD sysctl, CPU display 4705 prefix Linux releasefile 4706 treat Darwin like BSD (use sysctl hw) 4707 timing.sno: removed Revision, add ERROR/WARNING prefixes 4708 display TERMINAL messages at end for WARNINGS/FATAL 4709 io.c: check HAVE_STDARGS_H (was USE_STDARGS_H) 4710 lib/ordvst.c: include stdlib.h before h.h for FreeBSD 3.4 4711 lib/snolib/retstring.c: include stdlib.h before h.h for FreeBSD 3.4 4712 47131/3/2002 4714 autoconf: define CONFIG_HOST, CONFIG_OPTIONS (only if non-null) 4715 lib/snolib/host.c: add CONFIG_HOST, CONFIG_OPTIONS, reorder 2xxx 4716 add integer constants (23xx range) 4717 Makefile: push SNOBOL4 variable down to Makefile2, add TSORT variable 4718 Makefile2.m4: add SNOBOL4 variable 4719 47201/1/2002 4721 autoconf: disable largefile/getconf cleverness -- glibc getconf botch 4722 472312/31/2001 4724 lib/dummy/mstime.c: add comment to use time() 4725 lib/io.c, lib/str.c: tweaks (casts) to work on sparc w/ --longlong 4726 Thank God It's Over 4727 472812/29/2001 4729 lib/io.c: fix sset cast; tested SSET; use HAVE_FSEEKO (or lack thereof) 4730 autoconf: detect largefile support, always use it, define HAVE_FSEEKO 4731 detect SIGTSTP on Solaris 8 4732 473312/28/2001 4734 wrote count-procs script 4735 473612/27/2001 4737 genc.sno: make callgraph file tsort friendly 4738 Makefile: move tsort out to seperate command 4739 so we can detect errors from bogus tsort programs 4740 use new callgraph format 4741 v311.sil, procs: 4742 rearrange some code to avoid functionization 4743 eliminate procs (and loops): TRAC{1,4,6},STOPT1,RECOM{N,F,Q,T} 4744 INSTALL: add "Advanced configuration" section 4745 (information on local-config, local-defines) 4746 README: add chars.sno 4747 new: snolib/chars.sno: character sets 4748 474912/26/2001 4750 CHANGES: update configure options 4751 lib/io.c: add %G 4752 v311.sil: use %G for us/stmt 4753 autoconf: LP64 comments, GETRUSAGE_BUG for openbsd, select suspend.c 4754 changed cygwin32 to cygwin, check sys/signal.h for sigset_t 4755 lib/{bsd,posix}/tty.c: fix bad return in find... 4756 add tty_invalidate, ran comdef 4757 keep "last" dev_t used 4758 lib/{endex,init,io,stream,posix/tty}.c: kill unused variables 4759 include/macros.h: fix cast in OFCHK() to kill warnings 4760 timing.sno: allow integer compile/execute time/avg 4761 476212/25/2001 4763 config.guess: updated to latest 4764 Makefile2.m4: add suspend.o, SUSPEND_C 4765 Makefile: add .NOTPARALLEL 4766 lib/init.c: add suspend handler, remove tty_save() call 4767 lib/endex.c: remove tty_restore() call 4768 lib/posix/tty.c, lib/bsd/tty.c: 4769 keep state by device dev_t 4770 flush tty_save(), tty_restore() 4771 add tty_suspend() 4772 lib/snolib/serv.c: add SIGFUNC_T for fireman, casts for bzero() args 4773 lib/bsd/inet.c: cast bzero() args 4774 new: lib/posix/suspend.c: POSIX process suspension 4775 new: lib/bsd/suspend.c: BSD42 process suspension 4776 new: lib/generic/suspend.c: generic process suspension 4777 new: lib/dummy/suspend.c: dummy process suspension 4778 477912/21/2000 4780 Makefile: don't need to pass SIL to Makefile2 4781 lib/posix/tty.c: restrict recl to 0xff 4782 478312/20/2001 4784 Makefile: consolidate .PRECIOUS lines, add data_init.h 4785 Makefile2.m4: create and compile build.c before linking 4786 host.c: add HOST(2001) ... HOST(2005) -- build variables 4787 include/load.h: handle const strings in RETSTR() 4788 478912/19/2001 4790 INSTALL: updated 4791 autoconf: always define CONFIG_GUESS for HOST(2000) 4792 lib/snolib/host.c: add HOST(2000); display CONFIG_GUESS 4793 timing.sno: display HOST() and HOST(2000) 4794 479512/18/2001 4796 timing: show Ids from genc.sno, v311.sil 4797 README: updated. Include snolib file information, web docs. 4798 lib/{ansi,borland,bsd,dummy,generic,posix,vms,win32}/mstime.c, 4799 v311.sil, timing, genc.sno, include/snotypes.h, test/test.trace.sh: 4800 Keep runtime as a REAL (adds range at loss of 4801 resolution) effects all contexts; TIME(), trace 4802 messages, stats messages report microseconds/stmt. 4803 Makefile, Makefile2.m4: moved data_init.o rule back to Makefile2! 4804 add comment on DATA_INIT_CFLAGS and local-config 4805 add $(SRCDIR) prefixes for $(SNOBOL4).c 4806 Makefile: removed charset.c from TAR 4807 data_init.c: merged in stuff from charset.c 4808 lib/init.c: add '+' to start of getopt() optstring for RH7. 4809 Linux Losers chose incompatible behavior as the DEFAULT!!! 4810 For "snobol4.c -b genc.sno --inline" getopt was picking 4811 up the '--' "option"!!! 4812 removed: charset.c -- merged into data_init.c 4813 481412/17/2001 4815 Makefile2.m4, autoconf: add EXT variable for Cygwin 4816 test/tests.in: fix scanerr entry 4817 v311.sil: use CASECL to determine if compiler done at FTLEN2 4818 ETMCL can be zero on fast systems with bad resolution! 4819 timing.sno: remove crock for zero execution times 4820 482112/16/2001 4822 autoconf: check LONGLONG seperately for doubles, improve comments 4823 improved(?) getrusage() detection and comments 4824 only try LP64 on hppa*w architecture 4825 charset.c: was ASCII dependant. use just numeric constants 4826 timing.sno: crock for zero execution times 4827 482812/15/2001 4829 snolib/wrapper.sno: update TODO, comment out tests 4830 Makefile: removed bugs dir from TAR list 4831 483212/14/2001 4833 INSTALL: document --add-define= --longlong 4834 483512/13/2001 4836 new: test/scanerr.{sno,ref} scanner error case tests 4837 test/tests.in: add scanerr 4838 new: config/djgpp/lots: build scripts for DOS/DJGPP from B.Meissner 4839 new: lib/djgpp/load.c: DXE based load from Burkhard Meissner 4840 lib/bsd/inet.c: flatten hostnames to upper case for WATTCP/DOS 4841 lib/win32/inet.c: borland ifdef/include's 4842 from Greg White <glwhite@netconnect.com.au> 8/30/2000 4843 new: Borland make/batch files from Greg White; 4844 config/borland/{borlandmake.bat,borlandsnob.mak} 4845 config/borland/{win95test,win95tlist}.bat 4846 new: snolib/wrapper.sno -- create wrappers for LOAD()ables 4847 lib/bsd/load.c lib/dummy/load.c lib/hpux/load.c lib/next/load.c 4848 lib/unix98/load.c lib/win32/load.c genc.sno: 4849 renamed link() to callx() to avoid unistd.h conflict 4850 Makefile: removed []'s carried over from Makefile2.m4 4851 added "make generated" 4852 485312/12/2001 4854 CHANGES: updated 4855 autoconf: fix Solaris, Linux 4856 include date, host, sys info in config.h 4857 timing: ls -l config.h 4858 485912/08/2001 4860 Makefile, Makefile2.m4: move source generation up to Makefile 4861 allows clean cvs checkout to build (with existing binary) 4862 added "make spotless" 4863 486412/06/2001 4865 include/load.h: RETSTR() takes single arg, handles NULL 4866 all RETxxx macros wrapped in do { ... } while(0) 4867 pml.h, Makefile2.m4: add ORD() to snolib.a, PML it 4868 doc/snobol4.1: add ORD() 4869 win32/mstime.c: fix Win9x NO_STATIC_VARS 4870 487112/05/2001 4872 win32/mstime.c: fix Win9x version 4873 timing.sno: ignore zero shell time (cygwin) 4874 487512/04/2001 4876 autoconf: create config.h, add --add-define= 4877 use longlong/c99 functions when --longlong given 4878 Makefile2.m4: flushed $(CONFIG_GUESS) $(SYSDEFS), install config.h 4879 generic/intspc.c: fix comment, add cast 4880 tested --longlong (on FreeBSD) 4881 data_init.c: include config.h (for INT_T) 4882 lib/io.c: use int_t for io_print unit 4883 lib/longlong/spcint.c: ad hoc implementation (untested) 4884 new: c99/spcint.c c99/intspc.c 4885 timing: display config.h contents 4886 488712/02/2001 4888 LOTS: add 'ifdef HAVE_CONFIG_H/include "config.h"' 4889 (done using a SNOBOL4 program, of course!) 4890 489111/15/2001 4892 split {ansi,generic}/convert.c into {ansi,generic}/{spcint,spreal}.c 4893 moved intspc.c to generic/ 4894 updated Makefile2.m4, config/vms/descrip.mms, config/win32/ntmsvc.mak 4895 add serv.sno to snolib/ 4896 489711/13/2001 4898 lib/io.c: move osdep_open to top, move popen() to end 4899 490009/26/2001 4901 lib/win32/inet.c: added wVersionRequested variable 4902 490308/16/2001 4904 lib/snolib/serv.c: re-arm fireman at end of handler 4905 (to avoid zombie creation) 4906 490704/29/2001 4908 doc/snobol4.1: document SSET() 4909 491004/26/2001 4911 autoconf: fix long long, always set PML_SERV 4912 pml.h: add SERV_LISTEN (under ifdef PML_SERV) 4913 Makefile2.m4: add SERV_C, add serv.o to SNOLIB_OBJS 4914 491503/28/2001 4916 timing: add SuSE-release 4917 491801/18/2001 4919 autoconf: use win32/mstime.c under Cygwin 4920 492101/13/2001 4922 autoconf: add --longlong 4923 include/macros.h: cast pointer args for bzero/bcopy to void * 4924 so that we can use 64-bit ints when pointers are only 32-bits 4925 include/snotypes.h: allow INT_T to be redefined (default to long) 4926 492701/04/2001 4928 timing: add .exe EXTension if needed, for cygwin 4929 timing.sno: handle zero execution time (cygwin on win9x) 4930 autoconf: only add -ldl on SunOS (all flavors) 4931 493212/08/2000 4933 timing: improved for OpenBSD 4934 493511/14/2000 4936 autoconf: add --no-largefile, ARCH_OPT, add Id, options output 4937 config/vms/descrip.mms: make DEC C the default 4938 INSTALL: document VMS change, -lp64, --largefile, --no-largefile 4939 494011/07/2000 4941 lib/ordvst.c: declare ordvst_cmp() to take void *'s 4942 lib/posix/term.c: add ifdef HAVE_UNISTD_H 4943 removed; lib/generic/term.c 4944 494511/06/2000 4946 autoconf: major rework; disposed of ALL config/*.m4 files 4947 timing: run "file" command on executable 4948 494911/03/2000 4950 new: config/64bit.m4 4951 removed: config/{sony_news,ultrx-mips}.m4 (empty) 4952 config/{irix64,ultrasparc64,irix64}.m4: use 64bit.m4 4953 lib/next/load.c: NextStep (and MacOS X) LOAD() support 4954 autoconf: figure out which load.c to use 4955 removed sunpro goo 4956 removed empty config files 4957 use $INCDIR in dynamic.c tests 4958 config/{bsd43,netbsd-alpha,nextstep3,osf1}.m4, 4959 config/skel.inc: remove all LOAD_C settings 4960 496110/28/2000 4962 config.guess: add darwin (MacOS X), 4963 from www.darwinfo.org/pub/darwin/devel/config.guess 4964 autoconf: add darwin, help from Russ Urquhart 4965 496610/12/2000 4967 timing: display CPU: line from /var/run/dmesg.boot on BSD systems 4968 49699/22/2000 4970 timing: display mandrake-release file, add "break" 4971 4972 49739/14/2000 4974 autoconf: check for libsocket.so (in case SUNWarc not installed) 4975 49769/13/2000 4977 autoconf: fix dynamic.c messages 4978 49798/23/2000 4980 lib/generic/convert.c: fixed pasteo's thanks to 4981 "Greg White" <glwhite@netconnect.com.au> 4982 49838/21/2000 4984 autoconf: add NetBSD ELF check 4985 49868/15/2000 4987 timing: display slackware, turbolinux, debian RELEASE files 4988 49898/14/2000 4990 timing: display redhat-release, SuSe-release files 4991 49928/5/2000 4993 Fix for FreeBSD 4.x; 4994 autoconf: check for /usr/include/sys/vadvise.h to select dynamic.c 4995 config/nextstep3.m4 config/osf1.m4 config/skel.inc: remove DYNAMIC_C 4996 timing: display machdep.tsc_freq on FreeBSD 4997 49987/25/2000 4999 new file lib/snolib/serv.c 5000 autoconf: detect ELF on FreeBSD and add -export-symbolic, NO_UNDERSCORE 5001 add -export-symbolic on ELF Linux systems 5002 lib/unix98/load.c: add NO_UNDERSCORE 5003 50041/6/2000 5005 config/ultrasparc64.m4: config for solaris7 64bit env (tested) 5006 autoconf: emit HAVE_STDLIB_H 5007 main.c lib/init.c lib/io.c lib/ordvst.c 5008 lib/{bsd,generic}/dynamic.c lib/{bsd,posix}/tty.c 5009 lib/generic/popen.c lib/{hpux,unix98,bsd}/load.c: 5010 use HAVE_STDLIB_H for malloc/getenv 5011 501212/17/99 5013 timing: use psrinfo if available on suns 5014 50158/8/99 5016 config/borland/build.bat: add sset 5017 config/vms/descrip.mms: add sset 5018 config/win32/ntmsvc.mak: add sset 5019 lib/vms/popen.c: add retlen cast (for Alpha) 5020 lib/vms/tty.c: remove trailing NULs 5021 50227/2/99 5023 timing: use ./xsnobol4 (in case . not in user PATH) 5024 redirect sysctl stderr (some garbage on BSDI 4.0) 5025 autoconf: check for libdl in /shlib (for BSDI 4.0) 5026 50275/2/99 5028 autoconf: add mtxinu43, check for missing finite() on hpux 5029 new: config/mtxinu43.m4, lib/hpux/finite.c 5030 50315/1/99 5032 lib/win32/inet.c: add setsockopt, get_osfhandle, (short) casts 5033 50344/27/99 5035 snolib/http.sno: request 8k record length 5036 lib/snolib/sset.c: use oof parameter to io_sseek 5037 lib/io.c: fixed io_findunit, io_sseek 5038 Makefile2.m4: add sset.o 5039 50404/16/99 5041 config/vms/descrip.mms: fixes for AXP/DECC (not tested in 4 yrs?) 5042 50434/12/99 5044 lib/win32/sys.c: fix osname() 5045 Makefile2.m4: set SHELL=/bin/sh 5046 50473/12/99 5048 Add Experimental scaled SET interface; 5049 lib/io.c: add io_sseek() 5050 pml.h: add SSET 5051 new lib/snolib/sset.c 5052 50533/3/99 5054 INSTALL: update for --prefix 5055 50562/26/99 5057 Tested on FreeBSD 3.1 5058 autoconf: look for getopt in unistd.h 5059 timing: look for sysctl in /sbin 5060 50612/2/99 5062 Makefile2.m4: add SHELL=sh for IRIX 5063 50641/22/99 5065 lib/win32/mstime.c: fix if(n)def NO_STATIC_VARS 5066 50671/14/99 5068 lib/{win32,vms}/inet.c: removed HAVE_SOCKADDR_LEN 5069 50701/8/99 5071 INSTALL: updates from John Refling <johnr@spimageworks.com> 5072 Makefile2.m4: remove $(MANPATH) first (from John Refling) 5073 README: add John Refling! 5074 507512/31/98 5076 updates from trying to make a FreeBSD "port"; 5077 autoconf: add --prefix 5078 Makefile: change "default" to "all" 5079 Makefile2.m4: use PREFIX 5080 508112/28/98 5082 v311.sil, test/a.ref, test/dump.ref: fixed CASECL position 5083 508412/26/98 5085 autoconf: add --largefile 5086 lib/io.c: use ftello/fseeko thruout (crock ifdef on _LARGEFILE_SOURCE) 5087 508812/23/98 5089 lib/win32/sys.c: fix typo 5090 509112/19/98 5092 lib/bsd/inet.c, autoconf: removed HAVE_SOCKADDR_LEN 5093 509412/18/98 5095 autoconf: experiment: try setting _FILE_OFFSET_BITS to 64 5096 on Solaris 2.6 for Phillip Thomas 5097 509812/17/98 5099 config/vms/descrip.mms: tested, fixed 5100 510112/16/98 5102 Makefile: add .depend dependancy! 5103 Makefile2.m4: removed HAVE_UNISTD_H variable 5104 add explicit rules for version.o main.o data.o syn.o 5105 autoconf: check stdlib.h for getopt() 5106 flushed HAVE_UNISTD_H variable 5107 prefer gcc on sun4u systems! 5108 config/bsd44.m4 config/ansi.m4 config/bsd43.m4 5109 config/generic.m4 config/hpux-68k.m4 5110 config/netbsd-alpha.m4 config/nextstep3.m4 5111 config/osf1.m4 config/posix.m4 config/skel.inc 5112 config/ultrix-mips.m4: add $(SRCDIR) 5113 lib/bsd/mstime.c: set last_mstime! 5114 changed NO_GETRUSAGE_BUG to GETRUSAGE_BUG 5115 lib/date.c lib/generic/expops.c lib/unix98/load.c 5116 lib/realst.c lib/str.c lib/auxil/getopt.c 5117 lib/snolib/chop.c lib/snolib/cos.c 5118 lib/snolib/exp.c lib/snolib/log.c 5119 lib/snolib/sin.c lib/snolib/sqrt.c 5120 lib/snolib/tan.c: include system files first (to get __P) 5121 timing: make seperate symlink for snobol4 binary; remove .. prefix 5122 512312/14/98 5124 config/vms/descrip.mms: use vms inet.c! 5125 config/win32/ntmsvc.mak: use win32 inet.c! 5126 new lib/vms/inet.c: VMS only version 5127 new lib/win32/inet.c: winsock version; call WSAInit/Cleanup 5128 include/vars.h: add wsock_init 5129 513012/12/98 5131 timing: 5132 redir lsattr stderr to stdout (in case proc0 not found) 5133 avoid builtin "time" command if possible (for AIX4, OpenBSD) 5134 timing.sno: add "User" pattern for AIX4 5135 Makefile: 5136 add "default"; AIX4 make was making all the targets! 5137 moved "clean", "realclean" from Makefile2 5138 added "distclean" 5139 Makefile2.m4: moved "clean", "realclean" to Makefile 5140 autoconf: output libdl instead of -ldl 5141 config/osf1.m4: added -D_SOCKADDR_LEN 5142 514311/23/98 5144 lib/io.c: pass mode to osdep_open() 5145 doc/porting.ms: update 5146 514711/09/98 5148 config.guess: updated to new version 5149 added romp-ibm-aos 5150 autoconf: try use of dlopen() on 64-bit HP-UX 5151 genc.sno: process options 5152 Makefile2.m4: use genc.sno --inline option instead of inline.sno 5153 removed inline.sno from TAR files 5154 515511/02/98 5156 lib/vms/mstime.c: use CLK_TCK if available 5157 515810/31/98 5159 lib/bsd/mstime.c: avoid negative runtime deltas 5160 516110/22/98 5162 README: updated 5163 51648/18/98 5165 lib/win32/sys.c: 5166 add Win98 5167 suppress version numbers on Win95/Win98 5168 strip leading spaces from szCSDVersion 5169 51707/23/98 5171 autoconf: added cygwin32 test 5172 51736/12/98 5174 include/macros.h: change APDSP to call apdsp function 5175 after checking for non-zero length! 5176 lib/str.c: new apdsp function; call bcopy if above 5177 threshold (else do simple copy) 5178 12% reduction in genc.sno compile time 5179 7% reduction in genc.sno run time 5180 5181Made 060298.tar.gz; fetched by; 5182 Charles Wardell <cwardell@skila.com> 5183 51845/30/98 5185 Changes to allow building a Win32 DLL out of SNOBOL4; 5186 (under ifdef NO_STATIC_VARS) 5187 Makefile2.m4: add syn_init.{h,h2} 5188 data_init.c: include vars.h 5189 gendata.sno: bracket equ.h & res.h against multiple includes 5190 include BUFFERs in res struct; ifdef struct res decls 5191 gensyn.sno: output syn_init.h (included by generated syn.c) 5192 main.c: allocate vars struct; call init_syntab 5193 parms.h: include vars.h 5194 version.c: include vars.h; update to 0.99.4++ 5195 include/vars.h: new include file for static vars struct 5196 include/macros.h: ifdef math_error decl 5197 lib/{expops,endex,stream,date,ordvst,intspc,realst,init}.c: vars.h 5198 lib/{ansi,generic}/convert.c: include vars.h 5199 lib/win32/{load,mstime,tty}.c: keep static in vars.h storage 5200 lib/snolib/{host,retstring}.c: use vars.h 5201 52025/29/98 5203 lib/io.c: moved all static vars to "struct iovars" for DLL'ification 5204 units array and indexing now hidden by INTERN and FINDUNIT 5205 ran comdef 5206 52075/6/98 5208 autoconf: seperate --no-dynlib and --no-dlopen options 5209 52104/9/98 5211 doc/ports.doc: updated 5212 52133/7/98 5214 lib/bsd/inet.c: comments, ran comdef 5215 lib/win32/mstime.c: swap old & new in subtraction! 5216 52173/3/98 5218 lib/win32/load.c: rework load path handling; 5219 try bare filename first, then prepend snolib dir 5220 lib/bsd/inet.c: define "unix" (for HP-UX, AIX) 5221 52223/2/98 5223 doc/load.doc: talk about HP-UX and getstring() 5224 README: fix Steve Kibler's name! 5225 52263/1/98 5227 config/vms/descrip.mms: add .ifdefs (for DEC_C, NO_TCP) 5228 INSTALL: document VMS MMS/MACRO= options 5229 52302/26/98 5231 lib/hpux/load.c: keep seperate "lib" struct with refcounts 5232 5233Gave to Steve Kibler (Win32 DLL port) 2/24/98 5234 52352/15/98 5236 INSTALL: updated 5237 52382/14/98 5239 config/borland/build.bat: add exists.c 5240 genc.sno: check for zero integer divisor, use RMATH_ERROR() macro 5241 include/macros.h: add RMATH_ERROR(); calls finite() 5242 config/win32/ntmsvc.mak: add -Dfinite=_finite 5243 new lib/dummy/finite.c 5244 Makefile2.m4: add FINITE_C 5245 autoconf: add finite.o 5246 52472/13/98 5248 config/win32/ntmsvc.mak: add exists.c 5249 52502/12/98 5251 new lib/vms/unlink.c: use delete function! 5252 lib/io.c: fixed TTY_READ_COOKED (noeol arg, accept empty lines) 5253 lib/vms/popen.c: fixed typo 5254 lib/vms/sys.c: blows on VAX up unless debug puts() present? 5255 lib/vms/tty.c: fixed term/termlen swap 5256 config/vms/descrip.mms: updated (works on uVAX 3100 under VMS 6.1)! 5257 removed build.com 5258 52592/10/98 5260 config/vms/{build.com,descrip.mms}: updated 5261 lib/stream.c: renamed index variable for VAX/VMS cpp 5262 lib/io.c: include res.h for VAX/VMS CC 5263 lib/bsd/inet.c: ifdef includes for VMS 5264 lib/vms/tty.c: fix typo 5265 lib/vms/popen.c: add <errno.h> 5266 new lib/vms/exists.c: check for file existance 5267 INSTALL: cleaned up VMS instructions 5268 52692/8/98 5270 config/win32/ntmsvc.mak: add TTY_C TTY_DEFS NO_BITFIELDS vars 5271 lib/io.c: add /dev/tmpfile, OSDEP_FOPEN 5272 README: add L. Gene Battin 5273 52742/6/98 5275 lib/bsd/inet.c: use winsock.h under USE_WINSOCK_H 5276 config/win32/ntmsvc.mak: USE_WINSOCK_H, use wsock32.lib 5277 52782/5/98 5279 Makefile2.m4: move exists to snolib.a 5280 config/vms/descrip.mms, build.com: add exists 5281 52822/4/98 5283 lib/dummy/rresvport.c: for NT 5284 lib/bsd/inet.c: use winsock2.h on NT 5285 lib/win32/tty.c: fix typos 5286 new config/win32/ntmsvc.mak: NMAKE file 5287 add -O2, remove -Za, define __STDC__ as zero to avoid 5288 losing non-ANSI extensions! define isnan as _isnan 5289 52902/2/98 5291 lib/snolib/file.c: use exists() function 5292 lib/win32/load.c: use exists() function 5293 new lib/generic/exists.c, lib/win32/exists.c 5294 ntmsvc.bat: add -DUSE_STDARG_H, -DUSE_WINSOCK_H 5295 removed dump.{c,obj} 5296 Makefile2.m4: add exists.c, EXISTS_C 5297 lib/bsd/inet.c: add USE_WINSOCK_H ifdef (ugh) 5298 52991/28/98 5300 Fixed up ntmsvc.bat with help from Bert Vincent 5301 add win32/rename.bat to fix truncated filenames 5302 new lib/win32/tty.c 5303 53041/27/98 5305 lib/win32/sys.c: worked first try; made it better 5306 lib/win32/load.c: now compiles 5307 tested win32 popen-- works on NT 4.0 5308 lib/bsd/inet.c: added NEED_SOCKADDR_LEN ifdef 5309 autoconf: add INCDIR; define NEED_SOCKADDR_LEN if needed 5310 53111/26/98 5312 config/win32/ntmsvc.bat: removed some rem's, use new files! 5313 53141/5/98 5315 new lib/win32/popen.c: use MSVC _popen() UNTESTED!! 5316 new lib/win32/load.c: use LoadLibrary() UNTESTED!! 5317 lib/win32/sys.c: use GetSystemInfo() for hw type 5318 use GetVersionEx for O/S 5319 lib/win32/mstime.c: use GetSystemTime() and SystemTimeToFileTime() 5320 if GetProcessTimes fails (only implemented on NT?) 5321 532212/23/97 5323 include/h.h: add __P macro 5324 include/snotypes.h: add SIL_FUNC_PROTO macro 5325 include/syntab.h: add prototypes for functions in stream.h (if'ed out) 5326 lib/realst.c: declare void return 5327 lib/stream.c: fix accidental parameter removal? 5328 genc.sno: put silpath in top comment 5329 New include/lib.h: lib file prototypes (not used) 5330 533112/22/97 5332 New lib/win32/sys.c, lib/win32/mstime.c: UNTESTED, UNUSED 5333 README: add David Feustel 5334 533512/21/97 5336 New config/win32/tlist.bat 5337 New config/win32/nttest.bat 5338 David Feustel's WinNT reression test batch files 5339 534012/17/97 5341 New config/win32/ntmsvc.bat: 5342 David Feustel's WinNT batch file using MS VC++ 5.0 5343 534412/10/97 5345 Fixes from David Feustel's WinNT port; 5346 config/borland/build.bat: add missing files 5347 lib/io.c: added NEED_POPEN_DECL 5348 534912/5/97 5350 doc/snobol4.1: fix typo (thanks to Phillip Thomas) 5351 5352Gave to David Feustel 12/3/97 for WinNT port (0-99-4xx.zip) 5353Gave to Phillip Thomas 11/23? for tcp/findunit fixes 5354 535511/23/97: 5356 lib/init.c: catch SIGPIPE! 5357 lib/io.c: write newline directly if unbuffered 5358 Makefile2.m4: send test results to stdout 5359 536011/22/97: 5361 lib/bsd/inet.c: removed extra "int port" decl 5362 536311/21/97: 5364 Fix io_endfile() exhaustion reported by Phillip Thomas 5365 lib/io.c: io_closeall(); return status, free file blocks 5366 io_endfile(); call io_closeall(), even if no curr! 5367 536811/16/97: 5369 lib/generic/expops.c: use int_t in SIGN cast 5370 537111/8/97: 5372 doc/porting.doc: NO_UNBUF_RW 5373 Makefile2.m4: install .h files in snolib dir 5374 make hard link for snobol4-VERS 5375 touch snobol4 after hard link 5376 to ensure newer than snobol4.c 5377 537811/7/97: 5379 v311.sil: removed keyword tracing for &ERRTEXT 5380 didn't work (output as integer) 5381 neither SNOBOL4+ nor SPITBOL allow it 5382 538311/5/97: 5384 v311.sil: replace PROC with XPROC on merged scanner procs 5385 snolib/spitbol.sno: set &FULLSCAN = 1 5386 gendata.sno: get input filename using HOST() functions 5387 genc.sno: get input filename using HOST() functions 5388 add missing "new" SIL op names to comments 5389 add new XPROC op 5390 Makefile2.m4: pass SIL file to genc, gendata on command line 5391 lib/dump.c: use X_BKSIZE() in dump_dyn() 5392 timing: link v311.sil into timdir, and pass on command line to genc.sno 5393 include/macros.h: check second character in LEXEQ() 5394 539511/4/97: 5396 lib/init.c: increase default dynamic space to 64K descrs 5397 Makefile2.m4: removed -d512k arg from SNOBOL4 command 5398 (could reduce workspace in 64bit environs) 5399 genc.sno: use X_BKSIZE and X_GETLTH macros 5400 include/macros: add X_BKSIZE and X_GETLTH macros 5401 540210/30/97: 5403 lib/pat.c: make inlinable 5404 parms.h: inline pat.c 5405 8% reduction in genc.sno compile time 5406 v311.sil: catch bad data at PATBRA 5407 540810/29/97: 5409 lib/vms/{tty,getredirect,term}.c: flushed xxx_file hacks 5410 always use fgetname() 5411 541210/28/97: 5413 genc.sno: add IND before "hash()" 5414 v311.sil: merge scanner functions into SCIN1 5415 globals, procs: removed scanner functions 5416 genc runtime reduced 15% 5417 avoids nasty mutual recursions, stack overflows 5418 atn.sno runtime reduced by 63%!! (2.7x faster) 5419 worst case (4096 char string) reduced 69% (4.8x faster) 5420 snocone self-compile runtime reduced 5% 5421 542210/27/97: 5423 lib/io.c: perform lseek() directly on unbuffered units 5424 config/hpux.m4: removed -Dconst (now done in h.h) 5425 snolib/ftp.sno: add mode arg to FTP.DATA.COMMAND 5426 add TCP.DATA.CLOSE function 5427 fix anon open error return 5428 542910/24/97: 5430 v311.sil: allow REALs in INTVAL for Stephen Del Rea (from SNOBOL4+) 5431 snolib/snobol4+.sno: removed CONVERT() calls 5432 snolib/url.sno: use file.sno for local files 5433 test/tests.in: add intval 5434 New snolib/file.sno: local file ops for URLs 5435 New test/intval.sno test/intval.ref tests 5436 543710/11/97: 5438 snolib/http.sno: add "Host: " to request 5439 544010/10/97: 5441 snolib/snobol4+.sno: accept REAL offset argument to SEEK()! 5442 lib/vms/sys.c: removed OSNAME, trim trailing spaces from version 5443 544410/10/97: 5445 snolib/snobol4+.sno: add SEEK() 5446 544710/5/97: 5448 New h/dt.h; struct definitions for SNOBOL4 datatypes 5449 include/h.h: define dummy const & volatile if __STDC__ == 0 5450 lib/dump.c: use dt.h 5451 545210/3/97: 5453 lib/vms/sys.c: use SYS$GETSYIW to get architecture and VMS version 5454 lib/{bsd,dummy,posix,vms}/tty.c: add fname arg to fisatty 5455 lib/io.c: add FL_INPUT and FL_OUTPUT flags 5456 add fname arg to fisatty 5457 545810/1/97: 5459 New lib/borland/tty.c 5460 config/borland/build.bat: define TTY_READ_RAW, use borland/tty.c 5461 54629/30/97: 5463 Fixed (integer) math error handling; 5464 lib/init.c: declare math_error volatile 5465 include/macros.h: declare math_error extern volatile 5466 include/h.h: dummy out volatile on non-ansi compilers 5467 54689/29/97: 5469 doc/ports.doc: updated 5470 54719/27/97: 5472 gensyn.sno: set exit code if input file not found 5473 lib/realst.c: fixed comment 5474 doc/porting.ms: updated, merged, sorted ifdefs 5475 54769/26/97: 5477 lib/io.c: pass raw, keepeol flags to tty_read() 5478 add seperate TTY_READ_{RAW,COOKED} ifdefs 5479 lib/vms/tty.c: add back "raw" arg; support cooked reads (not used) 5480 add keepeol arg; use fgetname() to get fname for ASSIGN 5481 add TRMNOECHO (for cooked) 5482 config/vms/{build.com,descrip.mms}: TTY_READ_{RAW,COOKED} 5483 New: snolib/ftp.sno 5484 54859/25/97: 5486 lib/vms/tty.c: added SUCCESS() macro, NOFILTR flag, term[] mask 5487 lib/vms/popen.c: added SUCCESS() macro 5488 54899/24/97: 5490 autoconf: accept null string as an option for HPUX9 5491 problem reported by Yuli Barcohen 5492 config/borland/build.bat: added lib/generic/popen.c 5493 lib/io.c: removed NO_POPEN ifdefs 5494 TTY_READ for binary only, pass fname 5495 lib/bsd/tty.c: removed "old" and "TTY_SAVE_RECL" 5496 lib/vms/tty.c: use filenames to assign tty channels 5497 lib/posix/tty.c: removed "old"; fixed recl saving 5498 lib/vms/term.c: add term_file, term_fd globals 5499 lib/vms/getredirect.c: add std{in,out}_file globals 5500 New: lib/dummy/popen.c: does nothing 5501 New: lib/generic/popen.c: uses system() 5502 55039/23/97: 5504 lib/generic/expops.c: check for overflow 5505 New: snolib/smtp.sno snolib/http.sno snolib/url.sno 5506 55079/22/97: 5508 config/vms/{descrip.mms,build.com}: add READ_TTY define 5509 lib/generic/expops.c: use repeated multiply for expint() 5510 lib/vms/tty.c: implement tty_read(), tested 5511 lib/vms/popen.c: tested. Now available in DEC C RTL?? 5512 55139/21/97: 5514 lib/io.c: add io_finish(); 5515 much tweaking; 5516 added TTY_READ ifdef 5517 call tty_close() even if FL_NOCLOSE set 5518 free source files when compiler finishes 5519 make "|xxx" open fail if NO_POPEN defined 5520 lib/endex.c: call io_finish() 5521 lib/vms/popen.c: replaced with version from Icon 5522 config/hpux-pa.m4: removed -mlong-calls per Yuli Barcohen 5523 timing: check for /bin/model 5524 55259/17/97: 5526 Makefile2.m4: made snobol4 precious 5527 lib/init.c: catch resource limit signals 5528 lib/io.c: use fgets() again in io_read(). Only getc() 5529 for last character, if needed. 5530 New: lib/vms/popen.c 5531 New: lib/vms/tty.c my crude attempt at noecho support 5532 config/vms/{descrip.mms,build.com}: add popen.c, use vms/tty.c 5533 55349/15/97: 5535 New: snolib/snobol4+.sno emulates SNOBOL4+ functions 5536 55379/13/97: 5538 New: snolib/{unique,fence,not}.sno from Peter Arno-Coppen 5539 New: snolib/spitbol.sno emulates SPITBOL I/O & functions 5540 snolib/bq.sno: use IO_FINDUNIT() 5541 55429/10/97: 5543 Makefile: replaced seperate 2nd level rules with one using $@ 5544 Makefile2.m4: added SH=sh for IRIX 5545 replaced TESTED with "snobol4" 5546 do all cmp's silently 5547 lib/stream.c: stream tweaking; do put outside loop, use for() 5548 55499/9/97: 5550 v311.sil: Call io_pad() to fix -LIST RIGHT 5551 lib/io.c: add io_pad() function 5552 gensyn.sno: CONTIN is always implicit action zero 5553 lib/stream.c: handle CONTIN quickly (no table lookup); 5554 CONTIN actions are taken for 97% of characters scanned 5555 while compiling genc.sno; Compile time reduced by 8% 5556 55579/7/97: 5558 Ran profiling (prof and tcov) 5559 lib/io.c: only tack on one space to compiler input 5560 v311.sil: have compiler use length returned by STREAD 5561 reduces genc.sno compile time by 65% 5562 an average of 1000 padding spaces were being 5563 added to each line using 1024 recl. 5564 reduced 10% below compile time for 80 char recl. 5565 Use input length for listings; -LIST RIGHT is dead. 5566 lib/top.c: allow inlining 5567 parms.h: inline top.c 5568 55699/3/97: 5570 config/vms/build.com, config/vms/descrip.mms: updated 5571 new file lib/vms/sys.c 5572 55739/2/97: 5574 v311.sil: Implemented fatal "Output error" 5575 problem reported by Phillip Thomas in June 1994! 5576 genc.sno: pass iokey to io_output(), add labels to ENFILE 5577 io.c: return status from io_output(), io_endfile() 5578 procs: add COMP6 5579 55808/29/97: 5581 lib/unix98.c: add TRY_UNDERSCORE ifdef, enable for FreeBSD 5582 added mode var, default to zero if RTLD_LAZY not defined 5583 55848/20/97: 5585 lib/realst.c: include stdio.h for SGI -n32 ABI 5586 55878/19/97: 5588 lib/io.c: removed unused vars, fixed typos 5589 autoconf: fixed irix64 comment 5590 55918/13/97: 5592 configure: check into RCS! Use ./autoconf 5593 55948/12/97: 5595 INSTALL: replaced autoconf references with configure 5596 timing: redirect sunmodel standard error output 5597 5598**************** version 0.99.4 (RCS tag BETA7) 5599 56008/11/97: 5601 version.c: upped to 0.99.4 5602 CHANGES, README: updated 5603 doc/snobol4.1: updated date 5604 doc/load.doc: new sections on shared libraries, I/O functions 5605 doc/ports.doc: updated version numbers 5606 56078/10/97: 5608 timing.sno: calculate FACTOR before using it! use CHECKHZ()!! 5609 new test: any 5610 56118/8/97: 5612 doc/ports.doc: updated 5613 56148/6/97: 5615 Makefile: use ./configure 5616 Makefile2.m4: added configure to tar 5617 56188/5/97: 5619 v311.sil procs syntax.tbl: Code from SNOBOL4+ 5620 seperate syntax tables for BREAK(X) and SPAN 5621 simple index lookup for ANY/NOTANY 5622 lib/stream.c: new any() function 5623 56248/1/97: 5625 autoconf: general cleanup 5626 commented out irix64 detection (does not yet work) 5627 lib/stream.c: optimized clertb() -- 4% reduction in genc runtime!! 5628 56297/26/97: 5630 gensyn.sno: include h.h before syntab.h for non-ANSI compilers (sos4) 5631 sunmodel: use hostid on systems without openprom 5632 timing.sno: use REM to capture version number 5633 timing: removed "who am i" 5634 doc/ports.doc: updated 5635 56367/25/97: 5637 v311.sil: cleaned up clearing of compiler variables 5638 lib/auxil/bzero.c: zero blocks of "words" 5639 56407/18/97: 5641 autoconf: revamped gcc testing for Solaris/x86 5642 56437/16/97: 5644 doc/ports.doc: updated 5645 56467/11/97: 5647 autoconf: use CCVERS to output comments 5648 add --force-memmove; check for memmove in string.h if 5649 no bcopy(); define USE_MEMMOVE 5650 include/macros.h: added USE_MEMMOVE USE_MEMCMP ifdefs 5651 USE_MEMCMP not set; only necessary if DCMP_BYTES in use (rare) 5652 lib/bsd/inet.c: include macros.h for bcopy redefn 5653 INSTALL: document --force-memmove 5654 doc/ports.doc: updated 5655 56567/7/97: 5657 README CHANGES: updated for 0.99.4 5658 56597/6/97: 5660 init.c: deal with long arg vectors; created getargs() -- no static bufs 5661 lib/snolib/retstring.c: return long strings -- no static buf 5662 56637/5/97: 5664 autoconf: redirect grep output to /dev/null 5665 version.c: upped to ".3++" (pre .4 testing) 5666 doc/ports.doc: updated with "3++" timings 5667 56687/4/97: 5669 Makefile: made Makefile2 precious 5670 INSTALL: add --no-dlopen --no-dynlib 5671 doc/snobol4.1: add IO_FINDUNIT(), unit range, /dev/fd/n, dlopen(3) 5672 doc/porting.ms: add NO_FDOPEN 5673 56747/3/97: 5675 lib/io.c: add /dev/fd/ magic path, NO_FDOPEN ifdef 5676 add FL_NOCLOSE flag bit (but do fflush) 5677 have I/O close return status from (p|f)close 5678 have io_findunit() keep static finger 5679 Upped MAXUNIT to 256 5680 lib/snolib/findunit.c: PML access to io_findunit() 5681 pml.h: add IO_FINDUNIT 5682 Makefile2.m4: add findunit.c 5683 new tests longline, longrec 5684 56857/2/97: 5686 v311.sil: upped CARDSZ to 1024 again. For David J Birnbaum 5687 56887/1/97: 5689 lib/io.c: soak up excess "record" data after newline in ASCII input 5690 (problem reported by David J Birnbaum) 5691 Return full recl's worth of data for EOL mode ASCII input 5692 used to return recl-1; replaced fgets() 5693 56946/23/97: 5695 timing: cat /proc/meminfo on linux 5696 56976/22/97: 5698 lib/io.c: have T mode I/O imply unbuffered (for tty prompts) 5699 lib/snolib/getstring.c: handle null string 5700 tested resp.sno (see spring 1985) 5701 Makefile2.m4: add SNOLIB_FILE variable 5702 autoconf: check for bcopy() and bzero() in string.h 5703 alter SNOLIB_FILE when using dynamic linking 5704 57056/21/97: 5706 timing: use HP-UX "model" command, if present 5707 doc/snobol4.1: updated exponent info 5708 57096/20/97: 5710 lib/aux/bcopy.c: use (long) for casts 5711 ports.doc: updated 5712 57136/19/97: 5714 autoconf: look for /lib/libdl (for Linux) 5715 gensyn.sno: removed letter D from EXP class 5716 lib/ansi/convert.c: removed extra strtod() arg 5717 lib/realst.c: expanded buffer 5718 use "g" format (but make sure output doesn't look like an int) 5719 will use exponentials if output smaller. 5720 eliminates trailing zeroes, inaccurate output; 5721 (ie; 1e12 output as 999999995904.000000, 5722 1.e14 output as 100000000376832.000000) 5723 syntax.tbl: allow exponent's without fractions (ie; 1e5), like SPITBOL 5724 timing: cat /proc/cpuinfo (if present) on Linux 5725 dump hw sysctl info on BSD systems 5726 updated test output for realst change for; 5727 conv2.ref float.ref pow.ref space.ref spit.ref 5728 57295/27/97: 5730 lib/str.c: add spec2str() utility 5731 lib/bsd/load.c lib/unix98/load.c lib/dummy/load.c lib/hpux/load.c: 5732 make consistant; use spec2str, check for abs path 5733 clear V/F fields in function pointer 5734 autoconf: use hpux/load.c on HP's with dl.h 5735 57365/22/97: 5737 lib/bsd/load.c lib/unix98/load.c: 5738 fix "next" pointer setup 5739 new lib/hpux/load.c 5740 57415/21/97: 5742 gendata.sno gensyn.sno parms.h data_init.c v311.sil version.c 5743 Makefile2.m4 lib/ansi/convert.c lib/generic/convert.c 5744 lib/dump.c lib/endex.c lib/str.c lib/ordvst.c lib/init.c: 5745 Created "struct res" for resident data. All data now 5746 in named members, for easier debug. Expressions now 5747 legal in SIL ARRAY macro! flushed duplicate COPYSP decl. 5748 New machine generated res.h file. 5749 lib/stream.c: 5750 use isspace() in trimsp(). 5751 57525/20/97: 5753 genc.sno lib/endex.c include/macros.h parms.h: 5754 applied 10/10/96 tailcall depth stats changes 5755 all tailcalls use "BRANCH()" macro 5756 don't output PANIC() if LIVE not set 5757 9% reduction in isnobol4.c size 5758 genc.sno include/macros.h: 5759 moved RSTSTK() to RETURN() macro 5760 "alt" variable never needed, 5761 no need to bracket/indent calls 5762 5% reduction in isnobol4.c size 5763 57645/17/97: 5765 lib/str.c: TRIM tabs as well as spaces, like SPITBOL 5766 test/trim{0,1}.{sno.ref}: added tab tests 5767 57685/3/97: 5769 lib/unix98/load.c: check for name with _ prepended 5770 if not found (for NetBSD/pc532) 5771 57724/24/97: 5773 autoconf: added comments, $(SRCDIR) on XXX_C= lines 5774 57754/17/97: 5776 Makefile, Makefile2.m4: use mv -f throughout 5777 tested dlopen() on OSF/1, SGI 5778 57794/14/97: 5780 config/irix64.m4: ditch long long 5781 autoconf: check for libdl 5782 57834/13/97: 5784 new lib/unix98/load.c: load support using dlopen() 5785 autoconf: check for dlfcn.h, added --no-dlopen 5786 57874/5/97: 5788 doc/snobol4.1: document DATE() args 5789 autoconf, timing: added CCVERS for C Compiler version 5790 autoconf: new options --add-{cppflags,ldflags,objs,opt,srcs}= --opt= 5791 INSTALL: document new autoconf options 5792 57934/2/97: 5794 genc.sno, v311.sil, lib/date.c: support SPITBOL DATE() args 5795 doc/ports.doc: 486SX33 5796 57973/27/97: 5798 doc/snobol4.1: typo tweaks 5799 58003/7/97: 5801 doc/ports.doc: lots of new stuff from Rik Faith 5802 reformatted: removed "conf" column, added "opt" 5803 5804**************** version 0.99.3 (RCS tag BETA6) 5805 58062/12/97: 5807 autoconf: added sun4u and define __SPARCV9__ 5808 lib/bsd/dynamic.c: add vm_gc_advise() 5809 lib/generic/dynamic.c: add vm_gc_advise 5810 lib/io.c: default SNOLIB_DIR to "./" (for DOS) 5811 v311.sil: add calls to vm_gc_advise() 5812 version.c: upped version to 0.99.3 5813 config/borland/build.bat: new version from Steve Kibler 5814 config/borland/README: updated 5815 doc/ports.doc: new ss2 timing 5816 diffall: take TAG arg 5817 README: upped version to 0.99.3 5818 CHANGES: updated 5819 582012/25/96: 5821 autoconf: added openbsd 5822 config.guess: updated to latest (knows openbsd) 5823 doc/ports.doc: add openbsd/486, hpux7 5824 582512/10/96: 5826 README: mention SNOBOL4 list, new contributors 5827 lib/ansi/convert.c, lib/generic/convert.c: 5828 apply length limit. EVAL() can pass big strings! 5829 bug reported by p.a.coppen 5830 583112/07/96: 5832 second last TMRC open house in Bldg 20 5833 init.c: mention "k" suffix in usage message, per skibler 5834 lib/auxil/getopt.c: reorder includes for borland 4.51, per skibler 5835 lib/dummy/tty.c: add h.h for FALSE, per skibler 5836 lib/generic/sys.c: fixed ANSI_STRINGS ifdef sense. ran comdef 5837 583812/04/96: 5839 autoconf: grep strings.h for "index" before using BSD functions 5840 5841**************** version 0.99.2 (RCS tag BETA5) 5842 584311/28/96: 5844 timing.sno: made NOTIME error non-fatal 5845 doc/ports.doc: added bsdi 5846 checked out on AIX 4.1.2 5847 584811/27/96: 5849 README: updated version 5850 INSTALL: ./autoconf 5851 genc.sno: renamed raise() to raise1() to avoid ANSI raise() function 5852 lib/str.c: raise() -> raise1() 5853 doc/ports.doc: added HP 720/HP-UX 9.05 5854 version.c: upped version to 0.99.2 5855 checked out on HP-UX 9.05, SunOS 5.4, SunOS 4.1.4 5856 585711/24/96: 5858 doc/ports.doc: new timings 5859 586011/19/96: 5861 CHANGES: updated 5862 586311/14/96: 5864 timing.sno: output $rev$ 5865 config/gcc.m4: removed obsolete(?) SNOBOL4_CFLAGS=$(SNOBOL4_C_CFLAGS) 5866 config/hpux.m4: changed -D_INCLUDE_POSIX_SOURCE to -D_HPUX_SOURCE 5867 586811/13/96: 5869 timing, timing.sno: 5870 output on genc.sno to stdout, stderr 5871 move stdout compare check out of timing.sno 5872 allow times +/-1, +/-5% 5873 autoconf: avoid gcc on hppa-hpux 5874 test/clean.sh: rm *.bin 5875 587611/12/96: 5877 autoconf: check for sys/ttyio.h, define USE_TTYIO 5878 lib/bsd/tty.c: add USE_TTYIO ifdef for Version 10 5879 588011/11/96: 5881 INSTALL: change tcp.c to inet.c 5882 588311/08/96: 5884 doc/ports.doc: Ultra 170E, 200MHz PPro 5885 588611/06/96: 5887 lib/io.c: export io_mkfile(), call io_closeall(), return a value 5888 add /udp magic path 5889 add {STDOUT,STDERR,TERMIN}_NAME defines 5890 add io_findunit(), io_getfp(), 5891 export io_closeall() for PML'ed I/O 5892 renamed FOPEN_NO_B to NO_FOPEN_B 5893 add comments (incl. "close hook" idea) 5894 lib/bsd/inet.c: make "priv" open for UDP fail 5895 use INADDR_NONE; define our own if none avail 5896 Makefile: add xsnobol4 tag, $(TARGET) 5897 doc/ports.doc: timing for 110Mhz SS5 5898 589911/05/96: 5900 doc/ports.doc: timing for netbsd/sparc on 4/110 5901 clock speeds for A3000, 4/100 5902 put allrcs, diffall, tagall under RCS 5903 590411/04/96: 5905 lib/io.c: fix "update I/O"; add "last" member to struct file and 5906 fseek() before direction changes 5907 test/tests.in: add update 5908 INSTALL: add c-mainbol-users-request addr 5909 fixed diffall to handle new files 5910 591110/30/96: 5912 autoconf: add option processing; --force-gcc, --no-gcc options 5913 add check for getopt in stdio.h; add getopt.o $(GETOPT_C) 5914 add comments on sgtty use 5915 use CCPATH more 5916 config/skel.inc, config/bsd43.m4: remove getopt.o $(GETOPT_C) 5917 doc/ports.doc: new P75, PPro175(!!) numbers 5918 doc/snobol4.1: fix typo 5919 checked out fresh copies of all files with old (two digit year) 5920 RCS Id's, for cleaner rcsdiffing 5921 INSTALL: talk more about what autoconf, Makefile2 do 5922 document autoconf options 5923 Makefile2.m4: remove old files in SNOLIB_DIR before installing new ones 5924 (thanks to Jerry Leichter) 5925 592610/29/96: 5927 config/hpux-pa.m4: add gcc -mlong-calls comments 5928 doc/ports.doc: got an Alpha model number 5929 5930**************** version 0.99.1 (RCS tag BETA4) 5931 593210/28/96: 5933 autoconf: fix c89 test, add isnan.o for m68k-hp-bsd 5934 config/bsd43.m4: remove isnan.o 5935 version.c: updated vdate 5936 doc/snobol4.1: updated date 5937 593810/27/96: 5939 lib/io.c: add USE_STDARG_H ifdefs (just in case) 5940 594110/26/96: 5942 Makefile2.m4: have io.o, load.o depend on $(MAKEFILE) 5943 use $(LD_PATH) for load.o 5944 INSTALL: no longer need to fuss with io.o, load.o 5945 autoconf: use generic/term.c if no unistd.h 5946 config/bsd43.m4: set LD_PATH, removed TERM_C 5947 timing: search PATH for uname 5948 lib/bsd/tty.c, lib/posix/tty.c: 5949 use tty_mode(stdin,0,0,0) for tty_save() AND tty_restore()!! 5950 lib/io.c: call tty_mode() in io_flushall if FL_TTY set 5951 595210/25/96: 5953 v311.sil: call io_flushall 5954 lib/io.c: add io_flushall, ran comdef, add comments 5955 add fp check in io_seek() 5956 include ctype.h 5957 lib/lexcmp.c: subtract lengths 5958 lib/bsd/inet.h: include ctype.h 5959 lib/snolib/host.c, lib/snolib/exit.c: call io_flushall 5960 autoconf: tweak *bsd* 5961 Makefile2.m4: add sunmodel to tar; add leading -'s in install 5962 config/bsd43.m4: add getopt, isnan 5963 doc/ports.doc: hp370/bsd43, pc532/netbsd 5964 include/macros.h: compare first char in LEXEQ macro 5965 NOTE: all timings for 0.99.1 include LEXEQ change 5966 tested on Mt. Xinu 4.3 5967 596810/24/96: 5969 INSTALL: updated 5970 new: sunmodel script 5971 timing: run sunmodel on SunOS, hinv on IRIX 5972 add cleanup trap 5973 Makefile2.m4: removed syn.c2 from GENERATED 5974 597510/23/96: 5976 new lib/generic/execute.c 5977 new lib/dummy/execute.c 5978 removed lib/dummy/execl.c 5979 lib/snolib/exit.c: use execute function 5980 Makefile2.m4: add execute.o EXECUTE_C, removed execl.o EXECL_C 5981 CHANGES: updated 5982 README: updated 5983 version.c: upped to 0.99.1 5984 tested on SunOS 5.4, IRIX 5.2 5985 598610/22/96: 5987 new lib/bsd/tty.c 5988 new lib/bsd/tty.c 5989 new lib/dummy/tty.c 5990 lib/posix/tty.c: add USE_TERMIO 5991 lib/io.c: free include list at end of compilation 5992 new config/irix64.4 5993 autoconf: use irix64.m4 on "IRIX64" 5994 add -lsocket if libsocket.a exists 5995 add -lnsl if libsocket.a exists and on "SunOS" 5996 use dummy/inet.c if no socket.h 5997 check for termios.h/termio.h/sgtty.h 5998 Makefile2.m4: mention ports.doc 5999 doc/porting.ms: updated 6000 doc/snobol4.1: fixed lq,rq 6001 600210/21/96: 6003 lib/io.c: pass recl to tty_mode; use fisatty, tty_close 6004 lib/posix/tty.c: add save list, tty_close, tty_mode recl arg 6005 add TTY_SAVE_RECL, TTY_RAW ifdefs 6006 doc/snobol4.1: updated 6007 600810/20/96: 6009 lib/io.c: fix so REWIND(5) works on stdin: clear fp->f in io_close 6010 lib/posix/tty.c: disable CR/LF translation, signal processing 6011 601210/19/96: 6013 v311.sil: add SPITBOL SET() function 6014 procs, globals: add SET 6015 lib/io.c: fix io_open[io] to allow rewind (set "head") 6016 add io_seek for SET() 6017 add /tcp magic path 6018 new lib/bsd/inet.c lib/dummy/inet.c 6019 602010/18/96 (my 35th birthday); 6021 lib/io.c: implement update, unbuffered, append, raw tty, noecho 6022 tty modes are per-unit! 6023 lib/posix/tty.c: POSIX.1 tty support 6024 lib/endex.c: call tty_restore() 6025 lib/init.c: call tty_save() 6026 Makefile2.m4: add tty.o TTY_C 6027 602810/17/96: 6029 hacked up a version to use gcc &&label construct and compile 6030 all of v311.sil as a monolithic function (no SYSCUT or UNDF 6031 entry points) benchmarked using genc.sno, snocone2.sno, atn.sno 6032 603310/15/96: 6034 v311.sil: use XCALLC for io_open[io] 6035 replace INPUT() 3'rd arg with options string 6036 pass options/format to io_open[io] 6037 get recl back from io_openi 6038 genc.sno: 6039 deprecated XOPEN[IO] 6040 lib/io.c: 6041 implement io_options, io_open[io] take new args 6042 implemented "terminal" mode 6043 604410/13/96: 6045 v311.sil: fixes from SNOBOL4+ to avoid "Internal Errors" on runout 6046 604710/12/96: 6048 v311.sil: fix error pointer again 6049 add COMPCL; don't show syntax errors after compilation done 6050 set &ERRTEXT with compilation error messages! 6051 605210/11/96: 6053 doc/ports.doc: updated 6054 v311.sil: don't crash on CODE() syntax errors 6055 605610/10/96: 6057 doc/ports.doc: updated 6058 605910/9/96 6060 test/spit.sno: enabled ? at top level 6061 test/tests.in: removed ntrace.sno -- covered in spit.sno 6062 performed analysis of functions inlined 6063 looked at longjmp'ing out of deep tail-calls 6064 (analyzed tail-call depths) 6065 6066**************** version 0.99 (RCS tag BETA3) 6067 606810/7/96 6069 TODO: updated 6070 CHANGES: updated 6071 INSTALL: wrote it 6072 doc/snobol4.1: updated 6073 doc/ports.doc: updated 6074 autoconf: fix CONFIG_GUESS; add netbsd-alpha, osf1-alpha 6075 add CCPATH (was GCCPATH) 6076 config/alpha.m4: split out from osf1.m4 6077 config/gcc.m4: let autoconf do CC= 6078 new: config/netbsd-alpha.m4 config/osf1-alpha.m4 6079 lib/bsd/load.c: undef N_SIZE for NetBSD 6080 lib/init.c: save signal number in SIGNCL 6081 v311.sil: display signam number (SIGNCL) from SYSCUT 6082 config.guess: latest version; added romp-ibm-aos 6083 Makefile: add spotless, install 6084 Makefile2.m4: add spotless, install 6085 tested on AOS/ACIS 4.3; NetBSD/Alpha 1.2 6086 version.c: upped to 0.99 6087 608810/6/96 6089 CHANGES: new 6090 INSTALL: empty place holder 6091 doc/porting.ms: updated 6092 Makefile2.m4: add CHANGES INSTALL to tar 6093 add syn.c, syn.c2 back to tar 6094 doc/ports.doc: updated 6095 tested on SunOS 4.1.3U1, 4.1.4, 5.4, 5.5; 6096 HP-UX 10.10; IRIX 5.2; AIX 4.1; OSF/1 3.2 6097 6098**************** version 0.98.5 6099 610010/5/96 6101 README: updated 6102 add bsplitu.c 6103 autoconf: ADD_OBJS/SRCS for bcopy, bzero 6104 flushed ANSI_STRINGS var; moved back to ADD_CPPFLAGS 6105 added SYSDEFS to sys.o (for -DOSNAME or -DHWNAME) 6106 Makefile2.m4: flushed ANSI_STRINGS var 6107 added SYSDEFS 6108 added rules for dummy files: execl.o getenv.o system.o 6109 worked on "make tar" 6110 use bsplitu in "make uu" 6111 config/skel.inc: removed ADD_OBJS/SRCS for bcopy, bzero 6112 lib/init.c: fix usage; show name, version, date, descr size 6113 new lib/dummy/{execl,getenv,system}.c 6114 doc/snobol4.1: updated 6115 611610/4/96 6117 new lib/generic/sys.c, lib/posix/sys.c 6118 lib/snolib/host.c: use osname(), hwname() 6119 autoconf: check for ranlib, set RANLIB 6120 check for sys/utsname.h; set SYS_C 6121 add CONFIG_GUESS, HAVE_UNISTD_H, ANSI_STRINGS 6122 Makefile2.m4: add SYS_C, sys.o 6123 use CONFIG_GUESS, HAVE_UNISTD_H, ANSI_STRINGS 6124 config/skel.inc: removed -DANSI_STRINGS 6125 Makefile: add local-config comment to Makefile2 6126 doc/porting.ms: updated 6127 v311.sil: more comment tweaking 6128 moved INCSTK to ICLBLK (sir.sno GC crashed compiler) 6129 increased FNLIST free space to 20 functions 6130 version.c: always include macros.h 6131 upped version to 0.98.5 6132 613310/2/96 6134 doc/load.sno: add polymorphic args/returns 6135 include/load.h: add RETTYPE macro 6136 autoconf: add comments about local-config to generated config.m4 6137 Makefile2.m4: add SNOLIB_SRCS for make depend; quote include for pv 6138 lib/init.c: round ndynamic, pmstack down to even number of descrs 6139 lib/pml.c: fix const pointer, rename PMLOAD to PMPROTO 6140 lib/snolib/host.c: use RETTYPE 6141 lib/snolib/exit.c: improve comments 6142 test/tests.in: add ntrace 6143 pml.h: add FILE() RENAME() DELETE(); changed PMLOAD to PMPROTO 6144 include/macros.h: removed D_XXX; declare ostack as global descr 6145 v311.sil: fixed space at end of FNLIST; upped STSIZE from 1000 to 1500 6146 dynamic allocation slows OFCHK! 6147 61489/30/96 6149 v311.sil: don't zap FILENM at XLATND in case only stmt is END! 6150 use getpmproto function 6151 lib/pml.c: 6152 made arrays const 6153 add getpmproto function 6154 include/path.h 6155 removed SNOLIB_A, SNOLIB_DIR defaults 6156 Makefile2.m4: fixed SNOLIB_A path 6157 add SNOLIB_DEFS (supply SNOLIB_DIR and SNOLIB_A values) 6158 add *.a to disposables 6159 6160**************** 0.98.4 6161 61629/29/96 6163 v311.sil, procs, globals: renamed EXP to EXPOP 6164 renamed lib/{dummy,generic}/exp.c to lib/{dummy,generic}/expops.c 6165 autoconfig: include contents of local-config file, if any 6166 genc.sno: output '#define INLINING' 6167 param.h: add ifdef INLINING; inline hash.c 6168 pml.h: add HOST, EXIT, LOG, EXP, CHOP, SQRT, SIN, COS, TAN 6169 add NO_PML_{EXIT,HOST,REAL,TRIG}, ran comdef 6170 lib/hash.c: allow inlining 6171 lib/io.c: use HAVE_UNISTD_H, check for L_SET 6172 moved snolib/*.c to lib/snolib/ 6173 Makefile2.m4: add AUX_OBJS, AUX_SRCS, SNOLIB_A 6174 add SNOLIB_A to regular link 6175 add -r flag (back?) to make clean 6176 add warning for make realclean 6177 renamed exp.c to expops.c 6178 add rules to build snolib.a 6179 moved AUX_OBJS to snolib.a 6180 version.c: 0.98.4 6181 61829/28/96 6183 doc/snobol4.1: ran ispell 6184 61859/27/96 6186 doc/snobol4.1: updated 6187 doc/Makefile: use groff; add snobol4.html, snobol4.ps, porting.html 6188 doc/design.doc: updated 6189 61909/25/96 6191 doc/snobol4.1: updated 6192 added sin.c, cos.c, tan.c, exp.c, log.c, sqrt.c, chop.c to snolib 6193 v311.sil: fixed autoload temp usage 6194 version.c: add snoname, made version strings "const" again 6195 Makefile2.m4: add RANLIB, compile pv with -I./include 6196 lib/init.c: added -h 6197 lib/io.c: check SNOLIB for INCLUDE files 6198 remove trailing NUL's in STPRNT when compiling 6199 plug NUL's with spaces in place 6200 Listings finally tamed? 6201 62029/24/96 6203 lib/init.c: cleaned up usage message; fixed getk(), -p/-D alloc 6204 have math_catch & err_catch take int arg 6205 genc.sno: pass hash() two args 6206 lib/hash.c: take two args; added lots of comments 6207 tried different ascention calculations, no big wins 6208 Makefile2.m4: added DATA_INIT_CFLAGS 6209 removed unused symlinks config/posix.m4, config/irix.m4 6210 timing: take snobol path and args 6211 timing.sno: get version, added CHECKHZ(), DIFF array 6212 add yet another time format for m68k-hpux8.0 6213 indicate line number of diff failure 6214 handle blank line at end of diff 6215 include/snotypes.h: added VFLD_T 6216 lib/io.c: use strncpy, S_L for %v/%S in io_printf 6217 doc/ports.doc: updated 6218 config/osf1.m4: set NO_BITFIELDS, use double for FLOAT_T 6219 v311.sil: add autoload!! 6220 procs: add LOAD2 6221 pml.c: add PMPROTO macro for autoload 6222 6223**************** version 0.98.3? 6224 62259/23/96 6226 genc.sno: twiddle &INPUT (reduces some overhead) 6227 ports.doc: updated 6228 autoconf: (re)set CC when cc is gcc! 6229 show gcc version 6230 added HAVE_UNISTD_H define 6231 lib/init.c: cleanup, implemented -P (malloc pmstack) 6232 added getk(), -d takes bytes, k = 1024 6233 v311.sil: removed PDLBLK (now malloced in init) 6234 dropped SPDLDZ back to 5000 6235 tried doubling string hash table size (to 512) 6236 no big win (<2%); left it alone 6237 Makefile2.m4: updated -d arg 6238 62399/22/96 6240 v311.sil: use MOVA for &LAST(FILE|LINE) for speed 6241 handle tabs in error pointer code, moved FILCHK 6242 include file & line in compiler error messages 6243 test/tests.in: add line.sno err.sno reverse.sno 6244 lib/io.c: trim STPRNT output while compiling 6245 doc/snobol4.1: updated 6246 Makefile2.m4: fixed make tar 6247 version.c: upped version to 0.98.3 6248 62499/21/96 6250 v311.sil: added &PARM. fixed error number typos from yesterday. 6251 lib/init.c: added getparm() 6252 lib/date.c: use full julian year 6253 Makefile2.m4: removed vfprintf 6254 config/bsd43.m4 removed vfprintf 6255 deleted lib/auxil/vfprintf 6256 doc/snobol4.1: updated 6257 6258**************** version 0.98.2 6259 62609/19/96 & 9/20/96 6261 v311.sil: 6262 canonicalized lines with two edit numbers 6263 fixed some comment typos 6264 don't increment &STCOUNT if &STLIMIT < 0 6265 keep seperate stmt count for stats output 6266 add errors for bad INCLUDE, INCLUDE open error, missing END 6267 add &LINE &FILE and -LINE for real source line in errors 6268 use io_file to get initial (and subsequent filenms) 6269 add S4+ CTLADV proc, use for INCLUDE and LINE processing 6270 put all control card tests in a row 6271 add &LASTLINE &LASTFILE &ERRTEXT keywords 6272 changed formats; added file/line to errors 6273 lib/io.c: add NO_OFF_T, io_file 6274 removed quote removal in io_include 6275 implement conversions for io_printf for var/spec 6276 lib/init.c: implemented -M option for multifile input 6277 added SIGARG_T to SYSCUT prototype for picky compilers 6278 lib/lexcmp.c: fix for unequal string lengths by Keith Waclena 6279 README: added Keith Waclena 6280 test/tests.in: add lgt (by Keith Waclena) 6281 procs: add CTLADV, FILCHK, COMP1 6282 genc.sno: put &TRIM = 1 back for SNOBOL4+, allow _ in args 6283 pass addrs to io_printf, no more hacks for floats 6284 config/hpux-pa.m4: add -D_INCLUDE_POSIX_SOURCE for non gcc builds 6285 config/vms/build.com, config/vms/descrip.mms: add NO_OFF_T, SUBSTR defs 6286 autoconf: added undefine hpux, interferes with include file names! 6287 param.h include/macros.h: declare cstack only once (in snobol4.c) 6288 cc-M: reworked for #line output (AIX) 6289 Makefile2.m4: make GENERATED files newer than G2 versions 6290 add comments, cleanup & quoting in kitting 6291 compile, use pv 6292 version.c: moved version, ifdef MAIN back (for VMS) 6293 upped version to 0.98.2 6294 62959/18/96 6296 lib/auxil/getopt.c: fix ERR() for SUNpro (Sol2 fix) 6297 configure: fixed echo to stderr (Sol2 fix) 6298 doc/ports.doc: updated (new section for 0.98+) 6299 gendata.sno, genc.sno, gendep.sno: use TERMINAL, flush STDERR 6300 read SIL source from stdin 6301 Makefile2.m4: add SIL=, gendata.sno, genc.sno, gendep.sno read stdin 6302 timing: genc.sno takes SIL from stdin 6303 v311.sil: add REVERSE(), SUBSTR(), LEQ(), LGE(), LLE(), LLT(), LNE() 6304 globals: add REVERSE, SUBSTR, LEQ, LGE, LLE, LLT, LNE 6305 lib/str.c: support for REVERSE(), SUBSTR() 6306 test/tests.in: removed punch, added substr, lexcmp, space, space2 6307 Makefile: renamed configure to autoconf 6308 6309**************** version 0.98.1 6310 63119/17/96 6312 lib/tree.c: fixed INSERT (from SNOBOL4+) 6313 lib/dump.c: added dumpcode() 6314 added test/ops.sno 6315 now runs all GNAT SPITBOL programs 6316 version.c: use VERS/DATE, changed name to C-MAINBOL 6317 Makefile2.m4: Added VERS/VDATE (for version.c), use in make tar 6318 upped version to 0.98.1 6319 63209/12/96 6321 v311.sil: add TERMINAL variable associations for input & output 6322 include/units.h: UNITT for TERMINAL input 6323 lib/posix/term.c, lib/generic/term.c, lib/vms/term.c: term_input() 6324 lib/io.c: use term_input() to setup UNITT 6325 lib/hash.c: only look at first and last four! Thanks Mark!! 6326 Makefile2.m4: add TERM_C/term.c/term.o 6327 config/bsd43.m4; use generic/term.c 6328 config/vms/build.com, config/vms/descrip.mms; add term.c/term.o 6329 63309/11/96 6331 v311.sil: fix sort; edit [PLB31] added one MULTC too many 6332 63339/8/96 6334 v311.sil: only case fold strings in FIELD (fix from SNOBOL4+) 6335 upped SPLDSZ to 10k for snocone.sno 6336 lib/init.c: parameters support (-u and --) used by "external" host.c 6337 lib/stream.c: use unsigned char in stream/plugtb; 6338 ANY/NOTANY/BREAK/BREAKX/SPAN with 8-bit bytes 6339 were causing PREVIOUS table to get trashed! 6340 Makefile2.m4: make both isnobol4.c and snobol4.c PRECIOUS 6341 63429/6/96 6343 v311.sil: FREEZE()/THAW(), new table access code from SNOBOL4+ 6344 added -EXECUTE/-NOEXECUTE control cards 6345 ran untabify (skipped RCS History) 6346 moved all [edit] ids to column 64+ 6347 moved SORT to Arrays, Tables etc section 6348 include/snotyoes.h: add FRZN bit 6349 lib/ansi/convert.c, lib/generic/convert.c: strip leading 6350 spaces in spcint()/spreal() under SPITCL. Append 6351 terminator if using scanf() to detect if whole string 6352 was accepted (necessary for NUMERIC conversion) 6353 lib/init.c: updated usage(), added -n, parse up 'k' suffix on -d 6354 genc.sno: use FREEZE()/THAW(); 15% reduction in execute time! 6355 Makefile2.m4: added COPT, use -d<n>k 6356 doc/snobol4.1: updated 6357 globals: updated 6358 6359**************** version 0.98 6360 63619/4/96 6362 v311.sil: &STLIMIT < 0 means no limit, default to -1 6363 always case fold control card keywords 6364 disable stats by default 6365 default listing off (was being hit by init.c) 6366 removed EXPCL; default SPITCL to on 6367 fixed SPITBOL ? operator at top level 6368 lib/init.c: make -p toggle SPITCL, removed LISTCL hack 6369 gen{c,data,dep,syn}.sno: remove refs to &STLIMIT (and &TRIM) 6370 inline.sno: fix comment typo 6371 gensyn.sno, syntab.h: output syn.c2; made acts const 6372 tried making syntab's const; fails for SNABTB 6373 genc.sno: quiet warnings from PLUSOPS AEQLIC usage 6374 lib/pml.c: fix ifdef STDC typo 6375 timing: add/subtract -s switches 6376 version.c: upped to vers to 0.98, added "ifdef MAIN" 6377 Makefile2.m4: remove .c2/h2 files, added syn.c to SRCS (for depend) 6378 changed .c.TMP to .c2 63799/3/96 6380 v311.sil: Add SPITBOL operators (under -PLUSOPS) from SNOBOL4+; 6381 embeded scan, assign, scan/replace, selection (comma), 6382 NUMERIC conversion. value tracing for pattern match 6383 assignment. allow multiple array/table accesses. 6384 syntax.tbl: added SPITBOL binop table, exponents on REALs 6385 gensyn.sno: upped STLIMIT, added EXP char class 6386 gendep.sno: fixed SPREAL, added SPCINT 6387 procs: updated 6388 timing: run config.guess 6389 gendata.sno: output data.h2 data.c2 equ.h2 data_init.h2 6390 Makefile2.m4: cmp || cp for .h2/c2 files 6391 globals: added CMA 6392 configure: include config.guess output 6393 lib/init.c: added -p option 6394 test/run.sh: pass additional ARGS 6395 63968/31/96 6397 v311.sil Add SPITBOL features with code from SNOBOL4+ and 6398 Minnesota SNOBOL4; CHAR(), RPAD()/LPAD(), BREAKX(), 6399 SORT()/RSORT(). 6400 lib/str.c: added pad() 6401 genc.sno: added VCOMPC and NANCHK macros, 6402 optimize three-way with three different labels 6403 handle boolean with no labels (for XCALLC) 6404 output braces around escaped code 6405 renamed global.procs to globals 6406 gendep.sno: handle %{ %}, XCALLC, RCOMP, NANCHK, upped &STLIMIT 6407 Makefile2.m4: added isnan, configure, config.guess, globals 6408 added lib/dummy/isnan.c 6409 updated procs, doc/snobol4.1 6410 64118/29/96 6412 Tested on DS3100 (MIPS Ultrix -- 4.3 with a COFF) 6413 added config/ultrix-mips.m4 6414 updated ports.doc, configure 6415 64168/25/96 6417 Makefile: use new configure script 6418 configure: create config.m4 from thin air, using config.guess 6419 config.guess: GNU script 6420 64218/19/96 6422 Makefile2.m4: renamed lib/aux/ to lib/auxil/ 6423 AUX is a reserved filename in DOS(?!) thanks to Mark Emmer 6424 genc.sno: added XCALLC, %{ %}, allow LC in arguments 6425 added -CASE 0 (try and win back some speed) 6426 v311.sno: added real VARVUP, VPXPTR (Thanks to Mark Emmer) 6427 procs: added VPXPTR 6428 str.c: added raise2 6429 Makefile2.m4: leave test.out at top level! 6430 64317/28/95 6432 timing: include config.m4 contents 6433 doc/snobol4.1: update &DUMP &ABEND and &CODE behaviors 6434 v311.sil: add VARVUP (copy of VARVAL for now) 6435 64365/15/95 6437 hp4xx port (3/95 -pb): 6438 config/hpux-68k.m4 6439 gendata.sno: cast values for D_V() 6440 updated ports.doc 6441 64423/15/85 6443 config/nextstep3.m4 (Thanks to Leigh Smith) 6444 updated ports.doc 6445 added tests/rewind1 6446 64473/7/95 6448 lib/io.c: struct unit: better rewind (Thanks to Leigh Smith) 6449 lib/pml.c: fix for nextstep compilation (Thanks to Leigh Smith) 6450 64512/10/95 6452 lib/init.c, include/macros.h: implement [CLR_]MATH_ERROR() 6453 64542/3/95 6455 genc.sno: port improvements from experimental version: 6456 SELBRA() omits redundant labels 6457 new PLUS() functions omits "+ 0" 6458 include "else" in DOCMP2 and DOBOOL 6459 generate SHORTN/FSHRTN in-line 6460 Net change in snobol4.c size: +35 chars 6461 include/macros.h: removed SHORTN/FSHRTN 6462 Makefile2.m4: Add -b flag to SNO 6463 64641/25/95 6465 Makefile2.m4 config/{gcc,aix-rs6000,hpux,hpux-pa,skel.inc}.m4 6466 new ADD_XXX m4 macros 6467 64681/24/95 6469 lib/aux/getopt.c: fix endless comment 6470 Makefile2.m4: include CONFIG_CFLAGS in "make depend" 6471 6472**************** BETA2 patch2 version 0.91.2 (tag BETA2_patch2) 6473 64741/20/95 6475 lib/io.c: check for std{in,out,err} before fclose() 6476 64771/13/95 6478 config/borland/build.bat: added -DANSI_STRINGS 6479 lib/aux/getopt.c: include h.h (for index) 6480 64811/10/95 6482 config/vms/build.com: use CFLAGS variable 6483 lib/io.c: hacks for "-", "/dev/stdin" and "/dev/stdout", cleanup 6484 genc.sno: generate return after endex call! 6485 timing.sno: added stmts/sec 6486 64871/7/95 6488 Merged in DOS Port (using 32-bit Borland C++ 4.0) by Mark Emmer! 6489 lib/generic/convert.c: check for empty strings, changed ifdefs 6490 lib/init.c: ifdef SIGBUS 6491 new files: lib/borland/mstime.c 6492 config/borland/build.bat config/borland/snobol4.lnk 6493 6494 Alpha fixes; 6495 don't need "long long" 6496 lib/intspc.c: use %ld 6497 lib/realst.c: use %lf 6498 lib/ordvst.c: declare malloc() as returning pointer 6499 65001/6/95 6501 checked in 11/3/94 v311.sno, tests 6502 README, History: updated/fixed 6503 6504 ** Tested on AXP OpenVMS and DECC (1/4/94); 6505 lib/init.c: fix VMS typo 6506 lib/aux/getopt.c: use stdio.h 6507 lib/vms/getredirect.c: use unixio.h with DECC 6508 include/h.h: add index/bcmp defines under ANSI_STRINGS 6509 new files: config/vms/descrip.mms config/vms/build.com 6510 6511 ** Ported to AXP OSF/1 (1/5/94) -- has 64-bit integers!! 6512 Makefile2.m4; moved .PRECIOUS after first real target 6513 make TESTED depend snobol4.c 6514 Fix pointer/int sloppiness (sizeof(int) < sizeof(void*))!! 6515 gensyn.sno; cast pointers to int_t, move syntab.h include 6516 include/syntab.h; make put an int_t to hold pointers! 6517 include/macros.h; fix various stack macros casting to (int)!!! 6518 lib/stream.c; declare "tok" as "int_t" 6519 new files: config/osf1-alpha.h config/osf1-alpha-cc.h 6520 652111/3/94 6522 lib/ansi/mstime.c: ansi only version 6523 doc/porting.ms: update for above 6524 config/ansi.m4: config to use ansi mstime function 6525 config/generic.m4: added a comment 6526 v311.sil: quick fix for local variable case folding 6527 test/tests.in test/local.{sno,ref} tests for local var case folding 6528 65299/14/94 6530 timing, timing.sno: cleanup/improvements 6531 config/hpux-pa-cc.m4: new config for HPUX with native C compiler 6532 lib/date.c: tweak for VMS compilation (Martin Waller) 6533 charset.c: fix for SunOS5 SC3.0 compiler 6534 README: updated 6535 65369/13/94 6537 timing: AFS doesn't allow hard links across directories (Rik Faith) 6538 65399/3/94 6540 porting.ms, snobol4.1, load.doc, goals.doc, design.doc: ran ispell 6541 doc/Makefile: update for Solaris 2 6542 65439/2/94 6544 README: fixed spellings! 6545 65468/8/94 6547 lib/ordvst: got rid of a warning 6548 config/posix-cc.m4: new. used/tested on SunOS 5.3 6549 config/sunos5.m4: now a symlink to posix.m4 6550 charset.c: make ALPHA unsigned (for Sun SC3.0 compiler) 6551 65528/1/94 6553 lib/ordvst.c: real code, thanks to Martin D. Waller!! 6554 README, TODO: updated 6555 test/a.ref, test/dump.ref: updated 6556 65577/24/94 6558 lib/init.c: fix call to getredirect() (Thanks to Martin Waller) 6559 65607/7/95 6561 v311.sil, global.procs: Added FAILG label so FAIL can be inlined. 6562 timing.sno: more tweaks for AIX 6563 config/aix-rs6000.m4: new file (thanks to Phillip Lee Thomas) 6564 Makefile2.m4: fixed awk command 6565 6566**************** BETA2 patch1 version 0.91.1 (RCS tag BETA2_patch1) 6567 65687/5/94 6569 h.h: only define NULL if not already defined 6570 version.c: update for patch1 6571 65726/30/94 6573 more cleanup of timing.sno, added start of diff tag line 6574 fixed bsd/load.c when space in pathname 6575 65766/29/94 6577 version.c: clean up for non-ansi compilation 6578 timing.sno: Output bad diff results, loosten ms/stmt check 6579 6580**************** Second Beta release (RCS tag BETA2) version 0.91 6581 65826/24/94 6583 Made isnobol4 the default 6584 Added label RTNL3G so RTNUL3 can be inlined 6585 Use register pointer to "res" in data_init.c 6586 Updated load.doc 6587 Use awk to reverse tsort input (instead of reverse on output) 6588 Fixed sense of DO_UFCHK! 6589 Updated ports.doc 6590 65916/23/94 6592 Include both snobol4.c and isnobol4.c in kit 6593 Use register in data_init.c 6594 Implemented TRACE_DEPTH 6595 Ran "prof" profiling 6596 Inline pair.c!! 6597 65986/21/94 6599 Cleaned up config/ dir. 6600 Removed all "cc" configs. 6601 Turned on -finline-functions by default 6602 Added Makefile2 rules for isnobol4.c 6603 Added SNOBOL4 variable 6604 66056/20/94 6606 Fixed problem found by Phillip Thomas; Restart "card" 6607 processing after a semi. Allows comment and control 6608 lines after a semi. 6609 Created scripts for analysis of inlining results. 6610 66116/19/94 6612 Added {generic,posix}-cc.m4 configs 6613 Use skel.inc in generic configs 6614 Added AUX_{SRC,OBJ}, PML_OBJ 6615 Played with inlining 6616 66176/17/94 6618 Dropped compiler CARDSZ down to 132 for sane listings 6619 66206/15/94 6621 Upped compiler CARDSZ and default input size from 80 to 1024. 6622 Created snolib/{breakx,lcmp,pad,sort,substr}.sno, 6623 {fork,system,sprintf}.c 6624 bsd/load.c; use PML before trying real load. use SNOLIB env var. 6625 66266/13/94 6627 Prevent multiple inclusions 6628 trim include file names (after multiple inclusion test) 6629 66306/12/94 6631 Implemented -INCLUDE/-COPY 6632 Use RETxxx macros in snolib 6633 66346/10/94 6635 Added RETxxx macros to load.h 6636 66376/9/94 6638 Gave WIPS talk at Boston Usenix 6639 Created configs for aix, linux, irix, sunos5 6640 (all just include posix.m4) 6641 66426/6/94 6643 Run timing script in regression test (runs genc)!! 6644 UFCHK no longer on by default 6645 66466/4/94 6647 Created snolib (DELETE, FILE and RENAME functions) 6648 Call getredirect() under vms 6649 66506/3/94 6651 Turned off output NUL translation after compiler runs 6652 Try PML if ld() fails in bsd/load.c 6653 66546/2/94 6655 Created load.h LOAD_PROTO, LA_xxx macros 6656 Updated load.doc, sqrt.c 6657 Implemented "Poor Man's LOAD" for linked in functions!! 6658 Made REPLACE() 8-bit clean 6659 Fixed padding on input problem 6660 66616/1/94 6662 Started man page 6663 Made 8-bit clean 6664 Implemented simple pipe open 6665 66665/31/94 6667 Fixed/improved make tar; include "bugs" dir 6668 Updated porting.ms 6669 Added vms/getredirect.c 6670 Handle errors in genc.sno 6671 Avoid .h.new (for VMS) 6672 Updated ports.doc for LINUX 6673 Started on autoconfig script 6674 66755/30/94 6676 Fixed hp*.m4 include path 6677 Updated ports.doc for hp710 6678 66795/29/94 6680 Finished &LCASE &UCASE 6681 Fixed -CASE n 6682 66835/28/94 6684 Updated ports.doc for HP, SGI, IBM 6685 Implemented -f option 6686 Added ; and ! as comment chars (per SITBOL) 6687 Added &LCASE, &UCASE 6688 66895/27/94 6690 Allow external redefinition of HZ in generic/mstime.c 6691 Invalidate self pointer in lib/bsd/load.c unload() 6692 Changed types.h to snotypes.h to avoid include confusion on VMS?! 6693 66945/26/94 6695 Supress padding once compliation is over 6696 Turned off &TRIM by default 6697 Caught more CASE sensitivities 6698 Accept either case for S/F gotos 6699 67005/25/94 6701 moved Un*x version banner to version.c 6702 implemented case insensitivity -CASE/&CASE 6703 implemented DOBOOL() in genc for real 6704 67055/24/94 6706 converted Makefile2, config files to use m4 6707 67085/23/94 6709 cleaned up bsd load.c, for use on bsd44 systems 6710 added SIGFUNC_T to init.c, made default void 6711 6712**************** First Beta release (RCS tag BETA1) version 0.90 6713 67142/18/94 6715 *** First Beta release (RCStag BETA1) 6716 updated README, late entry in ports.doc 6717 include tests in tar! 6718 67191/25/94 6720 updated README, include TODO.soon in tar 6721 67221/24/94 6723 improved porting.doc 6724 run regression test from Makefile2 6725 added "make uu" 6726 67271/18/94 6728 wrote porting.doc, put all doc files under RCS 6729 added getopt to Makefile2.cpp, generic.h 6730 67311/16/94 6732 set exit code on fatal errors (including when 6733 execution aborted due to -NOERRORS) 6734 67351/8/94 6736 output UNIXF UNIXF2 at startup 6737 make 'LEFT' default listing side 6738 output error name string to stderr 6739 implemented -b (BANRCL), -s (STATCL) 6740 67411/7/94 6742 cleaned up config/ files. added bsd43, sony_news, posix 6743 checked in changes from 1/3 6744 added standards info to various lib files 6745 updated README (was README.alpha) for beta test 6746 split intspc.c realst.c from convert.c 6747 caseified formats, converted to printf() style 6748 caseified misc strings 6749 67501/3/94 6751 Brought up on Sony News 800 (68020) sqrt.sno works (no changes)! 6752 Tested on hp9000s800 (added posix/mstime.c) 6753 Brought up on Mt. Xinu hp300 4.3 BSD and IBM RT ACIS 4.3 6754 added generic/vfprintf.c, generic/convert.c 6755 use mktemp() in load.c 6756 675712/30/93 6758 cleaned up gensyn.sno output 6759 made format.c strings const 6760 did compiler timings (tried gcc -O2) 6761 did profiling. do DCMP() inline!! 6762 do LOCAPV inline? (called 6.7 million times by genc.sno)!! 6763 Created Makefile2, lib subdirs (generic, bsd, dummy) 6764 Flushed lib/Makefile 6765 676612/29/93 6767 cleaned up gendata.sno output, output formats 6768 cleaned up include file Id lines 6769 677012/28/93 6771 created (empty) mlink.h, mdata.h 6772 renamed headers.h to parms.h 6773 created dynamic.c 6774 include charset.c into init.c 6775 types.h cleanup; 6776 flushed flags.h 6777 created VFLD/FFLD macros 6778 made f field char, v field a 24 bit bitfield! 6779 (no time penalty on sparc!?) 6780 678112/27/93 6782 Announced alpha dist (finally got a place to put it)! 6783 Have gendata.sno (was data.sno) generate data.h, data.c, init.h 6784 Created init.c 6785 6786 Compiled and ran on HP 9000/8xx (PA RISC) machine! 6787 6788**************** First Alpha release (RCS tag ALPHA1) 6789 679012/9/93 6791 *** First Alpha release (RCS tag ALPHA1) 6792 Updated usage message, README.alpha, Make tar 6793 put this (and other files) under RCS 6794 679512/4/93 6796 Implemented -NOERRORS/-ERRORS control cards (default -NOERRORS) 6797 to supress/allow exeution of programs with compile errors. 6798 Implemented -k command line switch (like -ERRORS) 6799 680012/3/93 6801 output compilation error messages to stderr as well as listing 6802 accept '#' and '|' as start of line comments 6803 (can now use '#!' magic number for scripts!) 6804 680511/27/93 6806 revised README.alpha 6807 wrote LOAD.doc sqrt.c sqrt.c 6808 680911/26/93 6810 re-implemented io.c (file lists, no more io_unit struct) 6811 take file names on command line! implement -r flag 6812 changed -D to -d; default now 25000 now that GC works! 6813 681411/25/93 6815 fixed RSETFI; genc runs with 25K descrs (with 69 GC's)!! 6816 681711/24/93 6818 wrote dump.c 6819 682011/23/93 6821 fixed lvalue: comment.sno works 6822 atn.sno produces same SIZED (chars/lines) output as spitbol 6823 682411/22/93 6825 fixed linkor: alt1/2.sno work 6826 found problem in atn.sno (comment.sno) 6827 atn.sno gets pattern stack overflow (runs with SPDLSZ of 5000) 6828 atn.sno dies after table to array conversion (convert.sno) 6829 fixed MOVDIC: convert.sno works 6830 atn.sno runs to completion (sans comment problem) 6831 but output differs from spitbol?! 6832 w/ 200K descrs genc dies in last few lines (after 2 GCs) 6833 runs to completion with "only" 250K descrs (1 GC) 6834 683511/19/93 6836 implemented expint() exreal() 6837 found smallest proram with atn.sno bug (alt2.sno) 6838 create/use LEXEQ() macro! 6839 worked on README.alpha, DESIGN 6840 genstg.sno now creates equ.h, stgtyp.c, stg.h 6841 (flushed equ.awk, stgtyp.h stgh.awk) 6842 684311/18/93 6844 isolated match problem with atn.sno 6845 684611/17/93 6847 fixed MNREAL/MNSINT F/V output 6848 created IND_ARR, INDENTX, UNINDENT in genc.sno 6849 685011/16/93 6851 fixed locap{v,t} F/V output 6852 685311/15/93 6854 ran genstg under mainbol (w/ -D1M) after consolidating patterns 6855 685611/13/93 6857 ran genstg under mainbol (w/ -D2M) 6858 685911/10/93 6860 implemented filename support ala Catspaw (Vanilla) SNOBOL4(+)!! 6861 added XOPENI, XOPENO, XECOMP 6862 send all completion messages to stderr (PUNCH) 6863 ran gensyn under mainbol 6864 686511/9/93 6866 wrote, debugged load() and link() 6867 added CLR_S_UNUSED() to no avail 6868 686911/8/93 6870 clear V&F in DATE, MSTIME, SETAV, INTSP, REALSP, MULTC 6871 GC generally runs, but leaves bad pointers 6872 687311/6/93 6874 fixed lengths in MOVBLK and ZERBLK 6875 genc ran for the first time (generated code until LOCA1) died in GCM 6876 runs to completion with -D1000000 6877 687811/5/93 6879 implemented GETLTH by the book 6880 collect.sno runs (nothing to collect) 6881 688211/4/93 6883 fixed order of spec members, GC marking pass now runs 6884 upped number of user defined functions from 10 to 50 6885 upped OCASIZ from 1500 to 15000! 6886 implemented command line options 6887 688811/3/93 6889 diff.sno runs 6890 added junk PUSH() to SAVSTK() -- GC expects RCALL to use stack!! 6891 689211/2/93 6893 immed value assignment working (fixed assignment order in MAKNOD) 6894 cond value assignment working (output PUTSPC!!) 6895 put v311.sil, syntax.tbl under RCS 6896 got rid of IDENT columns!!! 6897 cleaned up genc, now parsed by mainbol!! 6898 worked on POUND_LINE 6899 match replacement working (fixed SPUSH/SPOP again!!) 6900 implemented rplace() library routine 6901 690211/1/93 6903 have gensyn process comments 6904 last SIL ops (ADJUST, ORDVST, RPLACE) handled in genc 6905 function args working (fixed PSTACK *PUSH, *POP) 6906 implemented getbal library routine 6907 690810/29/93 6909 complex patterns working (fixed CPYPAT) 6910 691110/28/93 6912 simple patterns working (but not pattern concatenation) 6913 implemented 6914 CLERTB, PLUGTB, DATE, LINK, MOVBLK, REMSP, LOAD, UNLOAD 6915 691610/27/93 6917 implemented; 6918 misc I/O (BKSPCE ENFILE REWIND) 6919 code tree ops (ADDSIB ADDSON INSERT) 6920 pattern ops (MAKNOD LINKOR 6921 value pair ops (LOCAPT LOCAPV) 6922 others; 6923 ADDLG BKSIZE CHKVAL EXPINT EXREAL LCOMP LVALUE 6924 MOVDIC PUTSPC SUBSP TOP TRIMSP 6925 runs simple programs (loops.sno runs ~15 x slower than SPITBOL)!! 6926 692710/25/93 6928 recieved S4D58 report (SIL reference manual) from Dr. Griswold 6929 implemented SETVA 6930 693110/24/93 6932 implemented INTSPC, REALST, SHORTN, SPCINT, SPREAL 6933 END recognized! 6934 693510/20/93 6936 implemented FSHRTN 6937 "END" not recognized 6938 693910/19/93 6940 implemented input and output ops (STPRNT, STREAD) 6941 implemented STREAM! 6942 694310/18/93 6944 implemented APDSP, LOCSP, PUTVC 6945 initialization code starts to run 6946 694710/17/93 6948 implemeted SETVC, VCMPIC 6949 695010/15/93 6951 implemented ENDEX, LEXCMP, VARID 6952 695310/14/93 6954 implemented GETSP, LEQLC 6955 695610/13?/93 6957 implemented ZERBLK 6958 695910/8/93 6960 implemented GETLG, SETSP 6961 696210/5/93 - 10/7/93 6963 implemented INIT, MSTIME, PUTLG, PUTSPC, GETSPC 6964 MOVDIC, GETLTH, PSTACK 6965 69668/92 6967 46 ops remaining (on 522 lines of SIL) 6968 6969 69707/24/92 6971 implemented: 6972 PUTAC, GETAC, SETFI, RSETFI, DIVIDE, BRANIC, INCRV 6973 MNSINT, RLINT, ADREAL, SBREAL, MPREAL, ADREAL, DVREAL 6974 69757/22/92 6976 implemented: 6977 int math: SUM, SUBTRT, MULT, MULTC 6978 SETAV, SETVC, SETLC, SPEC, TESTFI, MOVA, MNREAL 6979 6980to 7/21/92 6981 71 ops remaining 6982 69835/92 6984 C pattern matching working (see 3/90) 6985 69863/91 6987 Started genc.sno using Catspaw SPARC SPITBOL 6988 698911/90 6990 Found out about Catspaw SPARC SPITBOL from a Catspaw mailing. 6991 69927/90 6993 Started work at Shiva Corp. 6994 69953/90 6996 Started on C implementation of SNOBOL patterns using 6997 Gimpel's CACM article (and Orange book). 6998 699912/89 thru 3/90 7000 Worked on C versions of syn, genc using "traditional" tools 7001 awk/lex/yacc 7002 700311/89 7004 Got report on old/new naming conventions from Dr. Griswold 7005 began studying SIL source in earnest. 7006 700710/89 7008 Got (a rare) copy of "The Macro Implementation of SNOBOL4" book 7009 from Catspaw. 7010 7011late 1988? 7012 Found Vanilla SNOBOL4 (including Catspaw book order form) 7013 and SIL sources on cs.arizona.edu 7014 7015Fall 1987 7016 Tried using OS/360 MAINBOL to run questionnare analyzer 7017 7018Fall 1986 7019 BUCS20 unplugged, lost access to SITBOL for first time in 7 yrs 7020 7021Fall 1985 7022 Started work at BU full time. 7023 7024Spring 1985 7025 Used SITBOL to analyze questionnaires from 7026 Psychology directed study on computer mediated communication. 7027 7028Fall 1983 7029 Returned to school full time at BU, helped manage BUCS20 (2060) 7030 7031Fall 1981 7032 Started at DEC/LCG FORTRAN-10/20 group (which used SITBOL 7033 to perform FORTRAN regression tests) 7034 7035Fall 1979 7036 Learned SNOBOL4 using SITBOL freshman year at Stevens Tech 7037 Used to find errors (typos, mismatched commons) in FORTRAN programs 7038