diff options
Diffstat (limited to 'ANNOUNCE')
| -rw-r--r-- | ANNOUNCE | 218 | 
1 files changed, 61 insertions, 157 deletions
| @@ -1,137 +1,31 @@ -This message announces the availability of Scheme release scm5d2. - -New in scm5d2: - -	* Makefile (install): Make sure $(libscmdir)require.scm exists. -	(libscmdir): Use instead of IMPLPATH. -	* repl.c (scm_top_level): Corrected error test on exit in case 0 -	is not success. -	(repl): Return MAKINUM(EXIT_SUCCESS) when exiting an interactive -	session on EOF, this should not be an error. -	* build.scm (define-compile-commands): Added. -	(defcommand): Added. -	(platform): formatted; simplified names. -	* Makefile (features.txi): Added. -	* scm.texi (Build Options): take feature documentation from -	"features.txi". -	* build (make-features-txi): Creates documentation of build -	features from 'features table. -	* build.scm (build:define-feature): Added.  Feature definitions -	moved to top level. -	* Init5d1.scm (comment): Added. -	(read:sharp): Added `#;' comment syntax, *feature* SHARP:SEMI. -	* sys.c (scm_env_v2lst): Made tolerant to argc of zero, -	since ecache_evalx may call it thus for DO loops binding -	no values. -	* eval.c (debug_env_save): Function for use in ENV_SAVE when the -	CAREFUL_INTS paranoid debugging flag is #defined. -	(ecache_eval_args): Now calls ecache_evalx(), which -	evaluates a list of expressions and returns a list allocated on -	the ecache in scm_env_tmp. -	(m_do): (m_letrec1): (ceval_1): LET, LETREC, and DO now call -	ecache_evalx instead of using inline loops, this seems to improve -	speed by 5% - 10% for jacal and for simsynch simulation.  C stack -	usage will increase somewhat for large env frames. -	(lookupcar): Added support for constant bindings, to be created by -	LET, LETREC, LET*. -	* scl.c (dbl_prec): Use dbl_mant_dig in preference of potentially -	undefined DBL_MANT_DIG. -	* gmalloc.c: include "getpagesize.h" conditionalized on __svr4__. -	* build.scm (batch:chop-to-fit-system): Removed.  Use new -	batch:try-chopped-command instead. -	(mysql): Added to features. -	(build:build): Added comments describing stages and errors. -	* Makefile: Added platform.txi dependency where dependent on -	scm.texi. -	* Makefile (scm.info require.scm): "cp -p" more portable than "cp -a"? -	* sys.c (mode_bits): Fix for null output string case. -	* unif.c (make_sh_array): Reduced consing by using scm_cvapply -	instead of apply. -	*sys.c (mode_bits): Now takes an optional buffer which, on exit, -	will hold a mode string suitable to pass to fopen(), without any -	SCM extension characters. -	* r4rstest.scm (float-print-test): stop after first error. -	* sys.c (try_open_file): Insure that only 'r', 'w', 'b', or '+' -	may be included in mode strings passed to fopen. -	* repl.c (scm_freshline): Added FRESHLINE. -	* sys.c (init_storage): Make def_outp tracked, so freshline will -	work with it. -	* ramap.c (cind): Now takes C vector of indices, which may be -	allocated on the C stack, rather than a uve. -	(ramapc): (ramap): (ramap_cxr): (array_imap): (array_for_each): (rafe): -	Use scm_cvapply instead of apply, allocate index and argument vectors -	on the C stack for array ranks < 5. -	* record.c (makrectyp): (recprin1): Use scm_cvapply instead of -	apply. -	(rec_prinset): Checks arity of argument procedure. -	* sys.c (sfputc): (sfwrite): (sfgetc): Use scm_cvapply instead of -	apply. -	(mksfpt): Checks arities of soft port procedures when the port is made. -	* eval.c (scm_cvapply): (scm_arity_check): Exported. -	(makacro): (makmacro): (makmmacro): Call scm_cvapply rather than -	consing up argument lists.  Check arity of macro transformers -	once, when syntax is defined. -	* subr.c (make_vector): Fixed broken length argument test. -	* sys.c (scm_env_v2lst): Now takes list tail in scm_env_tmp, so -	tail can be allocated on ecache. -	* repl.c (scm_top_level): Print out supplied program arguments for -	failure exits to simplify debugging scripts. -	* eval.c (varcheck): Fixed for RECKLESS case. -	* eval.c (scm_arity_check): (macroexp1): Argument number checking -	in macroexp1 abstracted as scm_arity_check, for use in map, -	for-each ... -	(scm_cvapply):  Apply a function to a C vector of arguments, used by -	map and for-each. -	(scm_v2lst):  Added for use in scm_cvapply. -	(map): (for_each): Speed considerably improved: No longer allocate -	Scheme vector temporaries for up to 5 list arguments.  No longer -	allocate unnecessary argument lists, allocate on ecache if -	possible. -	* repl.c (iprin1): Print out first elt of cclo environment -- -	makes record procedures more identifiable. -	* sys.c (scm_env_v2lst): Now takes last cdr of list as argument. -	* sys.c (scm_port_entry): Make 16-bit safe. -	* Tscript.scm: File added to implement transcript-on, -	transcript-off without burdening normal i/o. -	* Init5d1.scm (transcript-on): (transcript-off): Now autoloads -	from SCM/Tscript.scm -	(_TRACKED): Added. -	* socket.c (l_socket): (l_connect): (l_listen): Modified to use -	port table. -	(l_shutdown): (l_getpeername): (l_getsockname): Test for OPFPORTP, not -	just OPPORTP. -	* posix.c (l_pipe): Modified to use port table. -	(prinpipe): Removed. -	* ioext.c (reopen_file): (l_dup): (l_dup2): Modified to use port -	table. -	* crs.c (prinwindow): Removed. -	(mkwindow): Uses scm_port_entry. -	* repl.c (iprin1): Uses "name" field for printing ports. -	(input_waiting):  (wait_for_input): -	(trans_on): (trans_off): Removed in favor of soft-port implementation. -	(lputc): (lgetc): (lputs): (lfwrite): (lungetc): Removed check for -	transcript, added line and column number support.  Unread char now -	kept in port table rather than CAR. -	(lreadpr): (line_num): Removed line counting for load port, now done -	using general line and column counting. -	(scm_port_line): (scm_port_column): (scm_port_filename): Added. -	(err_head): Now prints out multiple filenames for nested loads. -	Tries to recover from recursive errors if current-error-port is a -	soft-port. -	* unif.c (uve_read): Removed ungetc call, if there is an unread -	character, just call lgetc repeatedly for the first elt. -	* sys.c (must_malloc): (must_realloc): Now check whether the heap -	is initialized or not, so may be called earlier. -	(scm_init_gra): (scm_grow_gra):  Use above feature. -	(scm_port_entry):  Added, allocates entry in a port table used to store -	unread characters, file names, line & column numbers, &c. -	(mark_port_table): (sweep_port_table): Gc support for port table. -	ptobfuns now has a "name" element, used for printing. -	(prinfport): (prinstpt): (prinsfpt):  Removed. - - From David Yeh: -	* scl.c (makdbl): Mods to compile using MSVC. -	* scmfig.h: Don't #define SINGLES for MSC. +This message announces the availability of Scheme release scm5d6. + +New in scm5d6: + +From Aubrey Jaffer: + + + Tanel Tammet's Hobbit compiler is now integrated into the SCM +   distribution. + + + hobbit.scm modified for (symbol) GC changes in SCM.  Use of +   scm_gc_protect() instead of lists of protected objects means code +   produced by Hobbit is smaller and more readable. + + + Converted the hobbit documentation to texinfo format. +   http://swissnet.ai.mit.edu/~jaffer/hobbit_toc.html + +From George Bronnikov: + + + Ported SCM to the PLAN9 operating-system. + +From Martin Lafaix + + + scm.c (l_raise, l_sleep): + + script.c (dld_find_executable): + + scmmain.c, scmfig.h: Ported to OS/2, IBM VisualAge C++ v3. + +Plus improvements and bug fixes too numerous to include here (see +scm/ChangeLog).  				-=-=- @@ -147,51 +41,66 @@ include SCM in other programs.  Documentation is online at:  	     http://swissnet.ai.mit.edu/~jaffer/SCM.html  SCM source is available from: - http://swissnet.ai.mit.edu/ftpdir/scm/scm5d2.zip - ftp.gnu.org:pub/gnu/jacal/scm5d2.zip (FTP instructions follow) + http://swissnet.ai.mit.edu/ftpdir/scm/scm5d6.zip + swissnet.ai.mit.edu:/pub/scm/scm5d6.zip + http://swissnet.ai.mit.edu/ftpdir/scm/scm-5d6-1.src.rpm + swissnet.ai.mit.edu:/pub/scm/scm-5d6-1.src.rpm +Also available as i386 binary RPM: + http://swissnet.ai.mit.edu/ftpdir/scm/scm-5d6-1.i386.rpm + swissnet.ai.mit.edu:/pub/scm/scm-5d6-1.i386.rpm  SLIB is a portable Scheme library which SCM uses: - http://swissnet.ai.mit.edu/ftpdir/scm/slib2c7.zip - ftp.gnu.org:pub/gnu/jacal/slib2c7.zip + http://swissnet.ai.mit.edu/ftpdir/scm/slib2d4.zip + swissnet.ai.mit.edu:/pub/scm/slib2d4.zip +Also available as RPM: + http://swissnet.ai.mit.edu/ftpdir/scm/slib-2d4-1.noarch.rpm + swissnet.ai.mit.edu:/pub/scm/slib-2d4-1.noarch.rpm  JACAL is a symbolic math system written in Scheme: - http://swissnet.ai.mit.edu/ftpdir/scm/jacal1b0.zip - ftp.gnu.org:pub/gnu/jacal/jacal1b0.zip + http://swissnet.ai.mit.edu/ftpdir/scm/jacal1b2.zip + swissnet.ai.mit.edu:/pub/scm/jacal1b2.zip  HOBBIT is a compiler for SCM code:   http://swissnet.ai.mit.edu/ftpdir/scm/hobbit5x.tar.gz - ftp.gnu.org:pub/gnu/jacal/hobbit5x.tar.gz + swissnet.ai.mit.edu:/pub/scm/hobbit5x.tar.gz  SLIB-PSD is a portable debugger for Scheme (requires emacs editor):   http://swissnet.ai.mit.edu/ftpdir/scm/slib-psd1-3.tar.gz - ftp.gnu.org:pub/gnu/jacal/slib-psd1-3.tar.gz + swissnet.ai.mit.edu:/pub/scm/slib-psd1-3.tar.gz  SMG-SCM is an SMG interface package which works with SCM on VMS.   http://swissnet.ai.mit.edu/ftpdir/scm/smg-scm2a1.zip - ftp.gnu.org:pub/gnu/jacal/smg-scm2a1.zip + swissnet.ai.mit.edu:/pub/scm/smg-scm2a1.zip  A VMS version of Unzip is available by anonymous FTP from   ftp.spc.edu:[ANONYMOUS.MACRO32]UNZIP.EXE.  TURTLSCM is a turtle graphics package which works with SCM on MS-DOS  or X11 machines:   http://swissnet.ai.mit.edu/ftpdir/scm/turtlegr.tar.gz - ftp.gnu.org:pub/gnu/jacal/turtlegr.tar.gz + swissnet.ai.mit.edu:/pub/scm/turtlegr.tar.gz  XSCM is a X windows interface package which works with SCM:   http://swissnet.ai.mit.edu/ftpdir/scm/xscm-2.01.tar.gz - ftp.gnu.org:pub/gnu/jacal/xscm-2.01.tar.gz + swissnet.ai.mit.edu:/pub/scm/xscm-2.01.tar.gz  MacSCM is a Macintosh applications building package which works with  SCM (similar to XSCM).   http://swissnet.ai.mit.edu/ftpdir/scm/macscm.tar.Z + swissnet.ai.mit.edu:/pub/scm/macscm.tar.Z  WB is a disk based, sorted associative array (B-tree) library for SCM.  Using WB, large databases can be created and managed from SCM. - http://swissnet.ai.mit.edu/ftpdir/scm/wb1a2.tar.gz + http://swissnet.ai.mit.edu/ftpdir/scm/wb1a7.zip + swissnet.ai.mit.edu:/pub/scm/wb1a7.zip + http://swissnet.ai.mit.edu/ftpdir/scm/wb-1a7-1.src.rpm + swissnet.ai.mit.edu:/pub/scm/wb-1a7-1.src.rpm +Also available as i386 binary RPM: + http://swissnet.ai.mit.edu/ftpdir/scm/wb-1a7-1.i386.rpm + swissnet.ai.mit.edu:/pub/scm/wb-1a7-1.i386.rpm  SIMSYNCH is a digital logic simulation system written in SCM.   http://swissnet.ai.mit.edu/ftpdir/scm/synch1b0.zip - ftp.gnu.org:pub/gnu/jacal/synch1b0.zip + swissnet.ai.mit.edu:/pub/scm/synch1b0.zip  DLD is a C library package allowing SCM to dynamically load object  files on VAX (Ultrix), Sun 3 (SunOS 3.4 and 4.0), SPARCstation @@ -199,22 +108,17 @@ files on VAX (Ultrix), Sun 3 (SunOS 3.4 and 4.0), SPARCstation  systems.   ftp.gnu.org:pub/gnu/dld/dld-3.3.tar.gz -SCM.EXE (265k) is a SCM executable for DOS and MS-Windows. -Note: SCM.EXE still requires slib2c7 and scm5d2 above. +SCM.EXE (282k) is a SCM executable for DOS and MS-Windows. +Note: SCM.EXE still requires slib2d4 and scm5d6 above.   http://swissnet.ai.mit.edu/ftpdir/scm/scm.exe + swissnet.ai.mit.edu:/pub/scm/scm.exe  #! implements "#!" (POSIX) shell-scripts for MS-DOS batch files.   http://swissnet.ai.mit.edu/ftpdir/scm/sharpbang.zip + swissnet.ai.mit.edu:/pub/scm/sharpbang.zip   http://swissnet.ai.mit.edu/ftpdir/scm/#!.zip + swissnet.ai.mit.edu:/pub/scm/#!.zip  Programs for printing and viewing TexInfo documentation (which SCM  has) come with GNU Emacs or can be obtained via ftp from:   ftp.gnu.org:pub/gnu/texinfo/texinfo-4.0.tar.gz - -				-=-=- - -  ftp ftp.gnu.org (anonymous) -  bin -  cd pub/gnu/jacal -  get slib2c7.zip -  get scm5d2.zip | 
