2019-10-31 Erick Gallesio * Twenty years later, added a patch from Vladimir Nikishkin to allow compilation with recent eversion of gcc * Git-ification of the development tree from 3.1.1 (Sep'98) to 4.0.1 * Publication of the new tree on Gitlab and Github 1999-09-27 Erick Gallesio * Release 4.0.1 * Doc/Reference/*.tex : Numerous documentation correction provided by Ben L. Di Vito * Lib/srfi-9.stk: New file which implements (guess what?) SRFI-9 aka records. * STklos/stklos.stk : Bug correction in find-class 1999-09-16 Erick Gallesio * Doc/Reference/Reference2.tex : Added documentation on the primitive export-al-symbols which was missing. * Lib/www-mailto: * Lib/www.stk: New hook "www:hook-mailto" to handle "mailto:" requests. Furthermore, unknown protocol are properly handled now. * Lib/www-browser.stklos: Added a mail composer !!! It is used by the HTML browser when a "mailto:" is encountered. 1999-09-15 Erick Gallesio * STklos/Tk/Composite/Hierarchy.stklos (maybe-update-hierarchy): new function which retain that a update of the hierarchy is requested. If there is already a request pending nothing is done. This solves the problem (and enhance redisplay btw) signalled by Harvey Stein * Lib/www-url.stk : Applied a patch provided by Harvey Stein to correctly parse URL which use proxies. * Src/unix.c (STk_setenv): Use of STk_must_malloc instead of malloc. 1999-09-14 Erick Gallesio * Lib/init.stk (dotimes): Corrected incorrect behavior for negative bounds. Bug signalled by "Ben L. Di Vito" . BTW, if no result is given by the user in the dotimes, the result is now undetermined. * Extensions/process.c (run_process): Added the option :fork to run-process. This allows to simulate the "exec" command of Unix shells. Not implemented on Win32 * Src/: Minor problems for Alpha compilation (thanks to Jeremie Petit ) 1999-09-13 Erick Gallesio * Demos/README.html: Modified the applet for allowing the execution of the examples when STk is installed (bug signalled by Harvey Stein 1999-09-12 Erick Gallesio * Demos/server.stk : Bug correction: two xterm were launched and a GC caused the death of all the demo. * Doc/Makefile: Added the installation of manual in $(prefix)/stk-$(version). Manual is also added in RPMS as requested by Harvey Stein 1999-09-05 Erick Gallesio * Release 4.0.0 * STk.prj: Added the file Combobox.stklos 1999-09-04 Erick Gallesio * Demos/server.stk : Set the process in a variable to avoid the socket be closed when a GC occurs. * Win32: some minor corrections 1999-09-03 Erick Gallesio * First package named 4.0 (Let's pray). * New Copyright applied to all the files which need it. The new copyright deletes the restriction on commercial applocations. * Tk/generic/tkConfig.c (DoConfig): Correction of a long standing bug signalled by Brian Denheyer about the environments which were garbaged on checkbutton menu entry. * configure.in : Modifications for RPM 3.0 packaging 1999-09-01 Erick Gallesio * Src/syntax.c (syntax_let_family): Bug correction in named let: the scope of the name of a * named let encloses only the body of the let and not the * initialization values of the bound variables. That means that (let ((f -)) (let f ((n (f 1))) n)) => -1 rather than 1. This (apparently very common) bug was signaled in comp.lang.scheme. * Src/print.c (STk_print): Deleted an extra close parenthesis when printing a local var. 1999-08-31 Erick Gallesio * Lib/srfi-7.stk: New file for SRFI-7 (PROGRAM) * Src/syntax.c (STk_syntax_begin): Accepts now the form "(begin)" without complaining about a null body * Src/port.c : slight modification to input-port? primtive: it returns #t for all the input port (i.e. file, string and virtual port) instead of the file port only. A new primitive as been added: input-file-port? for testing explicitly if an object is an input port. Of course, the same applies also for output. This change was needed to be conform to SRFI-6. 1999-08-30 Erick Gallesio * Lib/defsyntax.stk : R4RS define-syntax. This is the Macro By Example implementation from Dorai Sitaram adapted for STk. * Lib/srfi-0.stk: New file implementing srfi-0 * Lib/srfi-2.stk: New file implementing srfi-2 1999-08-24 Erick Gallesio * Demos/widget.stk (show-code): Changed the way the code file is read to work under Win32 too. 1999-08-23 Erick Gallesio * Lib/init.stk (STk): Changed the time where the autoload of the graphical error routine is done, so that an error during the reading of initialization file doesn't pop this weird black empty window on the screen. * Src/port.c (STk_close_file_port): closing a closed file with fclose on glibc2.1.1 dumps core. fclose has been replaced by a fflush and a close. * Lib/winsocket.stklos : New file which implements sockets for Win32. This file is a contribution of Steve Pruitt 1999-08-22 Erick Gallesio * Demos/console-demo.stk: New (simple) demo showing the console in action. * Makefile.in (install-no-strip): New entry to install the executable without stripping them. This was needed by Brian Denheyer * Lib/console.stk : Added scrollbar in the list of modules when choosing a new console 1999-08-19 Erick Gallesio * STklos/Tk/Composite/Paned.stklos (): Made the fraction of a paned an active slot. This was requested by Andrew Dorrell 1999-08-18 Erick Gallesio * Demos/widget.stk :Changed the Quit button by a new toolbar for the widget Demo. 1999-08-16 Erick Gallesio * Doc/Reference/Reference*.tex: Big documentation update. * Src/io.c (STk_internal_flush): Changed the implementation of virtual port and make some cleanups. everything is documented now. 1999-08-15 Erick Gallesio * Lib/console.stk : Clos console menu didn't exit the interpreter on the main console. * Lib/help.stk: Modified the help function to deiconify the browser if it already exists * Src/stk.h: Conditionally define TRUE and FALSE as requested by Shiro Kawai * Lib/console.stk : New menu in console to allow to open a new console in a given module. * Src/module.c (STk_all_modules): New primitive "all-modules" which returns the list of all the living modules. 1999-08-12 Erick Gallesio * Lib/www-url.stk (merge-paths): modified to take into account Win32 * Lib/fs.stk: * Lib/win32.stk: fs.stk is the file which will load either unix.stk or win32.stk depending of the running system. * Lib/image.stk : Changed the images are searched. It didn't work for Win32 1999-08-04 Erick Gallesio * Lib/console.stk (console-splash-screen): compute geometry with quotient rather than "/" (useful for people with odd resolutions. Yes it exists!) 1999-08-03 Erick Gallesio * Src/unix.c: Modifications to parse correctly DOS filenames. This is probably not completely correct (DOS guys are really crazy). * Lib/www-url.stk (url-regexp): Changed the regexp for parsing correctly DOS filename (C:\\A was seen as the path \\A for the service "C") 1999-07-02 Erick Gallesio * Src/error.c (STk_err): the assignment of the two global is done now in STk_err to have it even in the context of a CATCH. Patch provided by Ian Wild . * Lib/balloon.stk ((display-balloon-help w)): Correction of a bug which apperas when the window to which a ballon is associated does not exists anymore. * Lib/dialog.stk: * Lib/error.stk: * STklos/Tk/Composite/Msgbox.stklos (): Added more colorful icons for the standard message boxes 1999-07-01 Erick Gallesio * STklos/stklos.stk: * Src/stklos.c (next_method_exists): New primitive in STklos: next-methods-exists? 1999-06-30 Erick Gallesio * Src/symbol.c: New primitive string->uninterned-symbol. * Lib/init.stk (gensym): gensym now use an uninterned symbol. 1999-06-21 Erick Gallesio * install.bat: Added the installation of libraries for Win32 as requested by Jonathan Berry 1999-06-19 Erick Gallesio * Src/hash.c (hash_table_put): * Src/tk-glue.c (STk_add_callback): Changed the variable new to new_entry to be more C++ friendly as requested by Jonathan Berry 1999-06-06 Erick Gallesio * Use a coherent scheme for toolbars. All the pixmaps have been modified. 1999-06-05 Erick Gallesio * Doc/Reference/Appendix-C.tex (subsection{Example}): Typo error signalled by Ben L. Di Vito 1999-06-04 Erick Gallesio * Src/proc.c (STk_procedurep): Bug corrcetion: procedure? was returning #t for all STklos instance, it returns #t for next-methods and descendants of methods now. (STk_is_thunk): ditto. * Tcl/tclInt.h: The Tcl List type is now hidden (since it is not used by STk) . It is a request from Jonathan Berry 1999-05-28 Erick Gallesio * Tk/generic/tkCanvLine.c: Added the option :centerarrow for lines. The implementation was provided by Sarah Calvo * STklos/Tk/Canvitem.stklos (): Added the center-arrow slot to the class to take into account the new:centerarrow option 1999-05-26 Erick Gallesio ****** All the stuff below has been provided by people at Grammatech ****** & * Tk/generic/tkFrame.c: Declare the menu option of a frame as a TK_CONFIG_MENU rathere than a TK_CONFIG_STRING. * Src/tcl-lib.c (Tcl_CreateInterp): flags field was not initialized. * Src/stk.h: Added #define USE_PROCESS for Win32 * Src/eval.c: Two new functions for applying 1 or 2 arguments only. * Src/io.c (STk_StdinProc): initializing errno to 0 before a read system call. * Src/dynload.c: Type declaration was uncorrect for a message issued on architectures without FFI. * Src/cont.c (STk_throw): On some architecture, the thunk to be executed on restauration of a continuation should be in a global rather than a local variable. * Lib/unix.stk: Win32 adaptations * Lib/menu.stk: Typos and motion. * Lib/init.stk: Win32 fixes * Lib/console.stk (console-invoke): fix of STk Error if there were multiple regions with "input" tag. ((init-console module std-console?)): color missing on HPUX replaced by its value. * configure.in: the --prefix option was not correctly propagated to Tk and Tcl configure scripts. * Stack/Makefile.in: new entry install.libs 1999-05-21 Erick Gallesio * Src/dynload.c: * Src/number.c: * Src/port.c: * Src/env.c: Some typo errors signalled by David Fox. * Src/tcl-lib.c (Tcl_CreateCommand): bug correction suggested by David Fox 1999-05-20 Erick Gallesio * STklos/Tk/Composite/Filebox.stklos: When the filebox was first invoked the "all" button was NOT checked, but the filebox displays all of the files, i.e., the button doesn't match functionality. Bug signaled and corrected by Brian Denheyer . * STklos/describe.stklos (describe): Extended types were described as unknown types, whereas a class is automatically defined for them. * Lib/init.stk (STk): added the function repl-write which is used by the repl-display-result to display results at the toplevel. It was write*, but it doesn't seem to be appreciated. The new value is a function which use write or write* for list and write* for other object. Of course it can be changed by just setting the repl-write result. * STklos/Tk/Composite/Hierarchy.stklos: Added the remove-item! method. * STklos/Tk/Composite/Toolbar.stklos: Modification of the toolbar code to allow the inclusion of any widget in a toolbar 1999-05-19 Erick Gallesio * Lib/www-browser.stklos (WWW:browser): * Demos/Widget/Wmenu.stklos (demo-menu): * Demos/amib.stklos (build-interface): Use the new toolbar widget instead of simple menu as before. * Demos/stklos-widgets.stklos: Added the font-chooser demo. 1999-05-18 Erick Gallesio * STklos/Tk/Composite/Toolbar.stklos (map-toolbar): Added the convention that spaces of length 0 in a toolbar correspond to a space which takes all the spaces (i.e. it sets the :expand option of the packer to #t) * Lib/menu.stk (Tk:menu-escape menu): code was incorrect when using the Escape key on a cascade menu. * STklos/Tk/Composite/*.stklos: Added a class to all the composite widgets, so that it can be initialized from resources. * STklos/Tk/Composite/Scrollframe.stklos: Modification to take into account the width and the height of a Scroll frame. * STklos/Tk/Font.stklos: New class which allow to manipulate fonts as widgets. 1999-05-16 Erick Gallesio * Src/dynload.c (push_argument): New convention: #f is now accepted for speicfing a NULL value for a string or a pointer. This was already the case for returned values but not for parameters. thsi was requested by terry jones * STklos/Tk/Composite/Notepad.stklos (initialize): Set the highlight thickness of tabs to 0, Otherwise the effect was bad (unluckily this was the defaut value I set in my .Xdefaults) * Lib/font-chooser.stklos (pretty): The weight of the font was missing. 1999-05-13 Erick Gallesio * STklos/Examples/E3.stklos: Use a require "Tk-classes" instead of "Canvas", otherwise *top-root* is improperly initialized 1999-05-11 Erick Gallesio * STk.prj: Integration of floating toolbars * STklos/Tk/Tk-classes.stklos: Integration of toolbars * STklos/Tk/Composite/Toolbar.stklos: New file which implements the floating toolbar abstraction. This was really a pain to write (even if it does not seem complicate afterwards :-<). This is not complete, but it's time to release... * STklos/Tk/Menu.stklos: Special clone-widget methods for and . This was necessary when cloning a toolbar which contains a menu. 1999-05-10 Erick Gallesio * STk.prj: A pseudo-stable version. * Src/tcl-obj.c (Tcl_EvalObj): Added code for evaluating a Tcl_obj expression. I forgot to write the code when new handlers were introduced for 3.99.4 :-<. Bug signalled by many, really many, users. * Lib/palette.stk: New functions: make-rgb-color, make-darker-color make-lighter-color * STklos/Tk/Basics.stklos (clone-widget): New generic function. It allows the creation of a clone of the given widget in another place in the hierarchy. 1999-05-06 Erick Gallesio * Tk/generic/tkFrame.c (TkCreateFrame): Small modification to allow the specification of a :colormap which is the empty string for Frames and toplevels. This is needed for cloning frames. 1999-05-02 Erick Gallesio * Lib/menu.stk: Some global grabs in the Tcl file were reported as local grab in STk. * STklos/Tk/Composite/Combobox.stklos (show/hide-combo-list): Changed the focus policy for combo boxes 1999-05-01 Erick Gallesio * Tk/generic/tkPlace.c: Typo error detected in Biglook and which seems not harmful in STk. * Src/vector.c (STk_sort): When sorting a list, there was an unnecessary copy vector which was allocated. Thanks to Manuel for signalling this bug. 1999-04-25 Erick Gallesio * Demos/stkfontsel.stk: New demo. * Lib/font-chooser.stklos (): When the user exits the widget without selecting a font, the old font remains the default one. 1999-04-24 Erick Gallesio * Lib/font-chooser.stklos: The font chooser has been completely rewritten. Now it only use one global variable (instead of 6) and is cleaner than the older one. The chooser also use the Combobox composite widget. 1999-04-17 Erick Gallesio * STklos/Tk/Text.stklos (text-see): typo error signalled by Brian Denheyer * Src/argv.c: Added the -version option to stk. This options just prints the version number and exit the interpreter. 1999-04-06 Erick Gallesio * STklos/Tk/Composite/Combobox.stklos: New Composite widget. * STklos/Tk/Tk-classes.stklos (STklos+Tk): Adaptation for the new composite widget. 1999-04-01 Erick Gallesio * Lib/trace.stk (Trace): Correction of a bug which deals with environments. Bug signaled by Jacques Chazarain . * Src/boolean.c (STk_eqv): Now environment can be compared with eqv?. Consequently, (eqv? (the-environment) (the-environment)) returns now #t. 1999-03-26 Erick Gallesio * STklos/describe.stklos (describe): Used ~W instead of ~S in some format to avoid infinite loops when describing circular structures. 1999-03-24 Erick Gallesio * Src/dynload.c (push_argument): Forgot to implement the boolean case Patch provided by David Fox . * configure.in: Application of corrections for FreeBSD provided by "F. Heinrichmeyer" * STk.prj: Various bug corrections * STklos/Tk/Image.stklos (initialize): New method: Pixmap extension need that the :file or :data be passed when the image is created => we use a new initialize method rather than the initialize-image scheme used for bitmaps and photos. Bug signaled by Brian Denheyer 1999-03-13 Erick Gallesio * Src/io.c (STk_getc): Correction of a bug on Alpha (OSF does not seem to set errno to 0 before a read!). Bug signaled by Vincent Granet 1999-03-11 Erick Gallesio * Tk/generic/tkBind.c: patch to make significant only the first character of a parameter in a binding lambda (i.e. x1 is now equivalent to x). Strange behaviour signalled by Brian Denheyer . * Src/primitives.c: New primitive port-closed?. 1999-02-13 Erick Gallesio * Demos/widget.stk: Modification of the path for accessing source in the widget demo. Thanks to Daniel Ortmann 1999-02-10 Erick Gallesio * Tk/win/tkWinDialog.c (ProcessCDError): compound options for standard dialog have now a dash (-initialfile => :initial-file, ...) to be consistent with Unix. * Tk/win/tkWinFont.c (WinFontFamilyEnumProc): Modified to transform font-name into strings rather than symbols. * Lib/menu.stk (Tk:menu-button-button-up): Typo correction (thanks to Eric Fintzel ) * STklos/Tk/Composite/Scrollframe.stklos: Rewritten 1999-02-08 Erick Gallesio * STklos/Tk/Composite/Scrollframe.stklos: New widget . 1999-02-02 Erick Gallesio * Release 3.99.4: This is the last pre 4.0 version. Code for Win32 is included. The definitive version will follow shortly if people thinks this version is OK (and when documentation will be updated :-<) 1999-02-01 Erick Gallesio * Lib/font-chooser.stklos: New file. 1999-01-28 Erick Gallesio * Lib/ftp.stklos: Changed the ftp code which hanged in some situations Thanks to David Tillman for signalling the bug. 1999-01-27 Erick Gallesio * configure.in : typos which avoid the compilation of static libraries. 1999-01-26 Erick Gallesio * Lib/console.stk: some console binding have been changed to be less "alien" with Windows. 1999-01-07 Erick Gallesio * Src/stk.h: Acces to float is now direct (i.e. without pointer). It was not the case to avoid to make too much big cells due to alignments problems. The trick was to put the union before the tag (suggested by "Jay Krell" . Thanks) 1998-12-27 Erick Gallesio * STklos/Tk/Composite/Balloon.stklos (): class redefined to use the STk layer ballons (defined for the console). * STklos/Tk/Composite/Schemetext.stklos: Modified to use the new font-lock code. 1998-12-26 Erick Gallesio * Src/signal.c: Finally code for Control-C works (finger crossed), for the console and for classical xterms. This was a pain to write it correctly. * Lib/console.stk: code cleaning and some minor bug corrections. 1998-12-25 Erick Gallesio * Src/dynload.c (find_function): Better error message when dynamic loading fails 1998-12-19 Erick Gallesio * Src/error.c (print_message): recursive error seems finally correct ;-) This was something that was unsatisfying since v2.0 !!! * Src/unix.c: Changes for MS C compiler provided by jay.krell@cornell.edu have been applied. * STklos/Tk/Basics.stklos (Id->instance): typo error 1998-12-10 Erick Gallesio * Src/error.c: error management has ben completely changed. This should be less fragile now. 1998-12-08 Erick Gallesio * Lib/tk-init.stk ("edit"): The ed function is now the scheme editor instead of the old one in file editor.stk * Lib/text.stk: Deleted the binding for Control-v on Unix. I don't like that but this allow to be more consistent with others software which use the windowish Contol-C Control-v Control-X bindings. * Lib/tk-init.stk:New functions set-widget-property! and get-widget-property 1998-12-02 Erick Gallesio * Lib/tk-init.stk: Typo correction which prevent the loading of Tk:get-save-file on Unix. * STklos/Tk/Text.stklos: Correction of a bug in the initialization of (generic parent was hidden by a local). Thanks to Eric Fintzel for signaling it. 1998-12-01 Erick Gallesio * Src/argv.c: New option -console to the interpreter to interact through a console rather than a xterm. On Windows, the console will be the implicit way to interact with the interpreter * Src/console.c: * Lib/console.stk: New files to implement a console for interacting with STklos. * Lib/font-lock.stk: New file. Font-lock doesn't need to load STklos now. 1998-11-22 Erick Gallesio * Src/port.c (STk_copy_port): New primitive: copy-port * Src/tcl-lib.c : Some cleaning on Tcl channels. * STklos/Tk/Listbox.stklos (y-view): Method lacks a dot before the "args" paramter (thanks to Walter C. Pelissero for signaling it). 1998-11-21 Erick Gallesio * configure.in : Applied the patch given by Shiro Kawai for IRIX 6.2. * Src/port.c: Char-ready is now implemented in io.c which is a quite natural place ... More code cleaning. 1998-11-19 Erick Gallesio * Src/sport.c: New primitive with-error-to-string * Src/port.c: - New primitive with-error-to-file (why was it absent?) - New primitives with-input-from-port, with-output-to-port, with-error-to-port - Rewriting of large parts of the file using new primitives. Src/io.c: has completely be rewritten. It should be faster now and handle all the kind of port we have: file, strings and virtual 1998-11-18 Erick Gallesio * Lib/text.stk: Pasting with mouse is now correct. 1998-11-10 Erick Gallesio * Src/*.c : * Extensions/*.c: Funtions using files heve all been replaced with port. It means that port, string-ports and virtual ports are now truly interchangeable. The drawback is that user code written in C which use files can be BROKEN. 1998-11-05 Erick Gallesio * Src/signal.c (STk_send_signal): New primitive. 1998-11-04 Erick Gallesio * Src/vport.c: New file which implement virtual ports. A virtual port can be opened for reading or writing. Functions to access the port are given by the user as Scheme procedures * STklos/Tk/Composite/Filebox.stklos : Error messages use a :text option instead of :message => error messages were not correctly displayed 1998-10-29 Erick Gallesio * Src/port.c (STk_read_line): starts now with a static buffer and extend it dynamically if needed. Furthermore a potential bug has been corrceted. 1998-10-22 Erick Gallesio * Lib/listbox.stk : 2 typo errors corrected 1998-10-15 Erick Gallesio * STklos/Tk/Toplevel.stklos: New generic-function: children and typo error correction in export list 1998-09-30 Erick Gallesio * Release 3.99.3 1998-09-27 Erick Gallesio * Src/toplevel.c (init_interpreter): *stk-library* is now initialized here instead in the Tk initialization procedure (implying that this variable is now defined in snow). * Tk version is now 8.0.3. The stable version of Tk8.0 1998-09-26 Erick Gallesio * Demos/classbrowse.stklos: New Demo of the class browser * Lib/class-browser.stklos: New file. This is class browser which fully use the MOP to display various informations about classes, such as their methods or their slots. Accessing to a class is done through a panel which shows the complete class hierarchy * Lib/method-editor.stklos: New file: Editor for methods and generic functions * Demos/widget.stk: Code of the various demo of the big widget program are now "font-locked". * STklos/Tk/Composite/Schemetext.stklos: New class: . This is a subclass of specialize for Scheme programs. For now, only Emacs like "font-locking" is done by this widget. * Tk/generic/tkText.c (TextSearchCmd): Added environment management to the Text searches. 1998-09-25 Erick Gallesio * Src/tcl-lib.c (Tcl_CreateInterp): Cache of regexp was not correctly initialized. * STklos/Tk/Composite/Multiwin.stklos: Border width of a Mutiple window is fixed to 0. Otherwise, displacement of inner windows is "chaotic". This particularly occurs when the user has a default border-width defined in its Xdefaults file. 1998-09-19 Erick Gallesio * Extensions/locale.c: New file. This extensions implement string and character comparisons using locale. The new functions are of the form string-lo #f whereas (string #t Comparison is now done on unsigned chars. 1998-09-17 Erick Gallesio * Src/argv.c (STk_process_argc_argv): Processing of argument has been rewritten. 1998-09-16 Erick Gallesio * Src/number.c (_STk_do_addition): Bug correction (two small giving a bignum in some cases). 1998-09-10 Erick Gallesio * Lib/tk-unix.stk: completely rewritten. * Doc/Manual/choose-color.n: * Doc/Manual/message-box.n: New manual pages * STklos/Tk/Tk-classes.stklos : The standard Tk dialog were not exported correctly. 1998-09-09 Erick Gallesio * Big code cleanup on all STk code. There were problems with Alpha, and I hope that this cleanup, will ease to find the problems. 1998-08-31 Erick Gallesio * Tk/unix/tkUnixSend.c (TkGetInterpNames): Bug correction: If the number of running intrepreters was 1, the command (winfo 'interps) returned a strings instead of a list of length 1. * Src/toplevel.c (repl_driver): The interpreter cannot be executed if the DISPLAY variable is not set and the option -no-tk has not been used. This should avoid me a lot of mail from people which install STk and complain of weird message when launching the demos... * Src/eval.c (STk_eval): Call to apply without parameter (i.e. [apply]) yields an error. This was a long standing bug signalled by Josh Mc Donald in 1995!!! 1998-08-29 Erick Gallesio * STklos/Tk/Toplevel.stklos: Two new methods make-transient and place-toplevel. * STklos/stklos.stk (class-methods): New function, which return all the methods which have a given class (or a descendant) in its specializers. 1998-08-25 Erick Gallesio * STklos/Tk/Composite/Notepad.stklos: New file which define a Note-pad class. * Demos/stklos-widgets.stklos: Added demo 1998-08-24 Erick Gallesio * STklos/Tk/Composite/Hierarchy.stklos: New file which define 2 new classes: and which allow to display any kind of hierarchy (see the source file for 3 examples of use). * Demos/stklos-widgets.stklos: Added demo 1998-08-23 Erick Gallesio * Tk/generic/tkBind.c (Tk_CreateBinding, FreeTclBinding): Bug correction: Bindings on item canvas, were not properly garbaged. BTW, the way for keeping track of closures used in bindings has been simplified. * Tk/generic/tkCmds.c (Tk_BindCmd): Adaptated to the new scheme for bindings. 1998-08-20 Erick Gallesio * STklos/Tk/Scrollbar.stklos: Adding exportation of STk:{h|v}-scroll-side and STk:{h|v}-scroll-side-set! 1998-07-28 Erick Gallesio * STklos/stklos.stk (compute-get-n-set): Signaling that an allocation scheme is unknown is now done in a method which discriminate on instead of . This greatly simplifies the usage of meta-classes which use multiple inheritance (old code implicitly suppose that a meta-class has a CPL of the form [ ... ]. With this modification, can appear before an "ante-penultiem" position. 1998-07-27 Erick Gallesio * Utils/STk.spec.in: Modified to be more architecture independent (as far as possible). In particular Linux PPC should work (inspired from a STk.spec file given by Philippe Laliberte ). 1998-07-25 Erick Gallesio * Tk/unix/tkUnixWm.c: Make the result of (wm 'state ...) consistent. It was, depending the cases, a string or a symbol. This is always a string now. THIS COULD BREAK EXISTING CODE! * Lib/tk-init.stk (*start-withdrawn*): One example of code broken by previous modification... 1998-07-22 Erick Gallesio * Src/Makefile.in (install.stk.libs): The tcl-glue.h and tk-glue.h files were not installed when doing a "make install.libs". Corrected now. Thanks to Vincent Granet for signalling it. 1998-07-20 Erick Gallesio * Src/print.c (printlist_star): Buggy when printing some simple dotted pair. The patch was provided by Ian Wild . * Tk/generic/tkFont.c (GetAttributeInfoObj): Bug when reporting boolean font attributes. Bug signalled by Vincent Granet * Extensions/base64.c: New file which provides base64 file encoding and decoding (base64-encoding and base64-decoding) * Lib/base64.stk: New file which load the base64 extension. It also provides the functions (base64-encoding-string and base64-decoding-string) 1998-07-19 Erick Gallesio * Src/cont.c (STk_throw): Bug correction: continuation escape procedures couldn't take an arbitrary number of arguments. Thanks to Michael N. Livshin for the patch. 1998-07-17 Erick Gallesio * Makefile.in: Modified so that all the install paths are relative to the value of "prefix". This seems to be useful for people using STOW. Suggestion made by Michael N. Livshin . 1998-07-15 Erick Gallesio * Extensions/hash.c (hash_table_put): Another bug in the hash table is corrected. Code for putting values in hash tables whose hash function is given by the user has been rewritten. Thanks to Brian Denheyer for pointing this bug. 1998-07-14 Erick Gallesio * Suppression of the background bitmap for the Web pages. It was not easily readable on 8bits displays. Even HTML is hard to port !! 1998-06-27 Erick Gallesio * Doc/Reference/Appendix-F.tex: Correction of a "bug" for the emacs auto-mode-alist variable initialization (signalled by craig dry ) 1998-06-09 Erick Gallesio * Release 3.99.2 1998-06-03 Erick Gallesio * Src/port.c (STk_read_line): Iconcorrect behaviour when a file is not ended by a newline (thanks to Shiro Kawai ) 1998-06-02 Erick Gallesio * Tcl/tcl.h: Added a dumb field to the Tcl_Obj type for AIX cc compiler (thanks to Eric Fintzel ) * Src/dynload.c : Added fake functions STk_call_external, STk_external_existsp and STk_cstring2string for systems without dynamic loading. Patch proposed by Eric Fintzel and Ron Lawrence . * Extensions/stk-genmake.in: File added. This script file can be used to build a Makefile for extensions. It constructs a Makefile which uses exactly the same options and compiler that was used to build the interpreter. * Extensions/%README: Updated. 1998-06-01 Erick Gallesio * STklos/Tk/Basics.stklos: Added exportations of and tk-constructor. * STklos/Tk/Tk-meta.stklos: Added exportation of compute-tk-virtual-get-n-set. 1998-05-31 Erick Gallesio * STklos/stklos.stk (ensure-class): Better error message when a slot or a metaclass is duplicated (the duplicate is now clearly shown now). * configure.in: Added the -fpic option for Linux shared libraries. It seems that problems appear when the object file is bigger than 64Kb (at least the Tktable is is in this case). 1998-05-30 Erick Gallesio * Doc/Reference/*.tex : Documentation update * Src/port.c (internal_format): Added the ~W format * Src/print.c: heavy rewritting. should be a little bit more efficient. 1998-05-28 Erick Gallesio * Extensions/html.c (html_next_token): Partly rewritten to take into account the syntax "&#number;" (signalled by Jacques Chazarain). BTW, the procedure has now the same behaviour as Netscape for unfinished entity (e.g. x&zz<...> is seen as a string which must not be interpretated). 1998-05-25 Erick Gallesio * Src/read.c: Now we can read circular data such as the ones built by write* 1998-05-22 Erick Gallesio * STklos/Tk/Tk-classes.stklos: Added to Tk-classes. 1998-05-21 Erick Gallesio * Tk/unix/tkUnixSend.c (Tk_SetAppName): Change the names of mutiple applications from "STk #2", "STk #3", ... to "STk#2", "STk#3" to avoid problems with the (winfo 'interps) call. This is clearly a hack. 1998-05-19 Erick Gallesio * Extensions/process.c: Correction of a bug that prevents you from getting the exit status of a child process under certain circumstances. Patch provided by Grant Edwards * Src/tcl-glue.c (STk_tcl_getvar): forgot a return in the function which breaks result at least on Solaris (thanks to Thomas Buerger for the patch). * STklos/stklos.stk (compute-get-n-set): Added the :each-subclass allocation scheme which correspond to the 3.1.1 :class allocation. Change was requested by Thomas Buerger 1998-05-15 Erick Gallesio * Lib/trace.stk: Bug correction: traces of primitives was incorrect. 1998-05-14 Erick Gallesio * Lib/init.stk: * Src/toplevel.c: New global variable *last-defined* which is set when a define is done. This allow some traces when evaluating large pieces of code. 1998-05-11 Erick Gallesio * Lib/tk-init.stk : functions of image.stk are now autoload 1998-04-30 Erick Gallesio * STk-3.99.1 Release * STklos/stklos.stk (ensure-class): Inclusion of the Metaclass init-keywords patch from J-M kubek , which allows to initialize some slots of a class when declaring it. * Lib/bigloo.stk (module): The compatibility function between bigloo modules and STk modules was not updated to the current version of modules. Bug signaled by J-M kubek * STklos/stklos.stk (shallow-clone): usage of class-definition-name instead of slot-definition-name in *-clone functions. Bug signaled by Walter C. Pelissero * Tcl/tclUnixPort.h: * Tcl/Int.h: Path correction for accessing compatibility files. This was needed for SunOS 4.3.x. * Extensions/Makefile.in : Don't trap errors when linking to see that there are problems (particularly for Solaris). 1998-04-27 Erick Gallesio * Installation process has been updated. * STklos/Tk/Button.stklos: The variable associated to a radio button or check button was not using the environment. * STklos/Tk/Text.stklos: * STklos/Tk/Entry.stklos: * STklos/Tk/Scale.stklos: * STklos/Tk/Basic.stklos: New function: initialize-value-slot which allow to initialize this slot even if the state of the widget is disabled. Idea from Walter C. Pelissero 1998-04-26 Erick Gallesio * Src/toplevel.c: Correction of a long standing bug which causes background STk to take all the CPU in some circumstances. It was hard to track 1998-04-22 Erick Gallesio * Src/tcl-glue.c (STk_valid_environment): Various problems corrected with the new :environment options which is available on widgets now. * Src/port.c (STk_flush): Bug correction. Trying to flush a string port was erroneous. Bug signalled by Walter C. Pelissero Mon Apr 20 20:52:21 1998 Erick Gallesio * Doc/Manual/repl-display-prompt.n: New documentation file. * Doc/Reference/*: Documentation update. Mon Apr 13 12:24:19 1998 Erick Gallesio * Demos/Html-demos/*: Adding the English demos which were accidentally forgotten from the previous release Sun Apr 12 14:13:05 1998 Erick Gallesio * Help/*: Pages were not regenerated and correspond to an old version. * configure.in : Various correction in the installation process which was wrong. The spec file for RPM and the STk.prj are now auto generated at configuration time Fri Apr 10 09:01:17 1998 Erick Gallesio * STk-3.99.0 release Wed Apr 8 17:02:26 1998 Erick Gallesio * Src/*.c: Correction: stderr (instead of STk_stderr) was incorrectly used in some places. * Src/Stack: Code was absolutely incorrect for machine which don't support FFI. Sun Mar 22 15:05:47 1998 Erick Gallesio * STk/port.c: load accepts now (again) a module as optionnal parameter Mon Mar 9 21:42:08 1998 Erick Gallesio * Lib/www-html.stk: Code for applet in S-scape polished. * Src/tcl-glue: Bug correction in STk_valid_environment * Tcl/tclEvent.c: Bug correction: after events callback table was not correctly cleaned when an event was fired. Sun Mar 8 23:41:11 1998 Erick Gallesio * Src/cont.c: Addition of R5RS values Sun Mar 1 11:53:40 1998 Erick Gallesio * Lib/www*: The Web Browser has been rewriten. Sat Feb 28 12:37:29 1998 Erick Gallesio * Src/gc.c: Bug correction: Error context was improperly reset when an error occurs in catch. Fri Feb 27 01:07:50 1998 Erick Gallesio * Src/unix.c: Three new functions on file: remove-file, rename-file temporary-file-name. They correspond to their equivalent in the ANSI C norm. Tue Feb 24 18:56:17 1998 Erick Gallesio * Demos/Widget/*.stklos: All the widget demo are now implemented. * STklos/Tk/Text.stklos: New . This class is the now the parent class of and of (the new) class . * Tk/generic/tkConfig.c: a lot of change to take image as a real type (instead of a string). Configuration has been cleaned. Thu Feb 19 16:39:46 1998 Erick Gallesio * Demos/stetris.stk (new-game): replaced an after which use a pre STk-3.0 after bindind (i.e. an after with a list) by a lambda. This cause problem with module environment (the first one I see since a long time). This could have been resolved by makeing Tk importing STklos+Tk. But there is no good reason to do so. The bad news is that very old code can be broken if it uses list bindings instead of lambda (it's more than 2 years than this form is deprecated) and STklos. Thu Feb 12 16:17:36 1998 Erick Gallesio * Demos/stklos-widgets.stklos: Updated to take into account new composite widgets. * Src/port.c: read-line now skips the '\r' characters. Sun Feb 8 20:59:34 1998 Erick Gallesio * Tk/generic/tkScale.c (ScaleVarProc): New option :ENVIRONMENT * Tk/generic/tkMessage.c (ConfigureMessage): New option :ENVIRONMENT * Src/error.c: Cleanup (one more time :-<) Mon Feb 2 22:47:52 1998 Erick Gallesio * STklos/Tk/Composite/Colorbox.stklos: New class , and its user function Tk:choose-color. Sun Feb 1 19:16:46 1998 Erick Gallesio * Lib/tk-unix.stk: New file for the definition of standard messages box. They are simulated on Unix and will be native (someday) on Windows. * STklos/Tk/MsgBox.stklos: New Classes: . This classes are used by the new function Tk:message-box to build mesages boxes. * Src/read.c: Now #. is evaluated in the current module (instead of the global one). * Src/tcl-glue.c (STk_convert_Tcl_string2list): current module is set to the Tk module when converting a Tk result to Scheme. This is mainly for "#." expression which must be evaluated in the Tk module since all the side effects done by Tk are done in it. Thu Jan 29 19:21:48 1998 Erick Gallesio * STklos/Tk/Composite/Choicebox.stklos: New slot for es: CHOICE. This slot contains the set of possible values for the entry. Mon Jan 26 15:42:11 1998 Erick Gallesio * STklos/Tk/Tk-meta.stklos: Protocol for widget has been "lighted". The slot tk-valid-option has ben deleted and slot are set one by one after class initialization. This in in fact faster than the old method. However and classes, don't fit well in this scheme (some of their slots cannot be changed after the widget is created (e.g. class or visual) => There is a spcial init function for theses classes. * STklos/Tk/Basics.stklos: Composite widgets have now a class slots which contains the class of the object. This slot is initialized by default to "Composite", but it can be overloaded for a particular class. For instance labeled entries use the value "LabeledEntry" by default. This feature can be used for initializing the X11 resource database. for instance you can have STk*LabeledEntry*Entry*Background: white in the .Xdefaults file to set the default value of background of the entry of a widget. * STklos/Tk/Basics.stklos: :tk-virtual slots accept now the :init-form option. That means that you can do new classes which simply change the default value by subclassing a previous widget class. * STklos/Tk/Frame.stklos: Change in the STklos hierarchy: inherits now from . They were separate classes before. Sun Jan 25 10:53:54 1998 Erick Gallesio * Src/toplevel.c: * Lib/init.stk: User initialization file (.stkrc) is now loaded after Tk is initialized. It used to be initialized at the end of init.stk (and hence just before Tk). File loading is done in C. now. Sat Jan 24 13:22:51 1998 Erick Gallesio * STklos/stklos.stk: Bug correction in METHOD. * STklos/describe.stk: renamed to STklos/describe.stklos * STklos/active.stk: renamed to STklos/active.stklos Thu Jan 22 23:50:38 1998 Erick Gallesio * Lib/init.stk: New macro: DEFINE-VARIABLE. It's equivalent to the Elisp/CL DEFVAR * Lib/tk-init.stk (*start-withdrawn*): A lot of people dislike the fact that the root window is mapped on screen when Tk is started, The code below, unmaps the *root* window and make it appearing as soon as the first sub-window is packed or some action is asked to the window manager for *root*. With this code, the the behaviour is identical to the Tk original one except that the empty squared window don't appears on screen. The original behaviour can be recovered by setting *start-withdrawn* to #f Tue Jan 20 14:40:31 1998 Erick Gallesio * Src/proc.c: New undoumented procedure: %procedure-arity * STklos/stklos.stk: * Src/stklos.c: Optimisation of slot accesses for virtual slots. The call to APPLY is now inlined in the slot-ref and slot-set! functions. The arity of the setter and getter functions is now verified at class creation (rather than slot access, in some extent). The only drawback is that the getter and setter function must be closures now, whereas they could be generic funtions or primitives before (but I cannot imagine how it could be used). Sun Jan 18 20:06:00 1998 Erick Gallesio * STklos/trace-gf.stklos: New file for tracing generic functions. * Lib/trace.stk: Trace has been updated and take into account generic functions now. Tue Jan 13 10:13:22 1998 Erick Gallesio * Lib/dialog.stk: Correction of bug signaled by Fritz Heinrichmeyer Fri Jan 9 21:06:22 1998 Erick Gallesio * Src/port.c: Bug correction in "AUTOLOAD?". BTW, this function admit now a (optional) second parameter which can be a module. * Src/syntax.c: * Src/env.c: * Src/module.c: Bug correction for C varaiables which were "disconnected" of their C counterpart in some cases Thu Jan 8 12:27:44 1998 Erick Gallesio * Src/stklos.c: New slot for generic functions: "module" Sat Jan 3 16:50:55 1998 Erick Gallesio * STk.prj: STk.prj has been completely redefined. Now PRCS versions are in sync with STk version. Thu Jan 1 13:18:22 1998 Erick Gallesio * Src/dynload.c: New function: EXTERNAL-EXISTS? to determine if a symbol is defined in a library. Wed Dec 31 15:37:36 1997 Erick Gallesio * Src/hash.c (hash_table_put) Bug correction: code was not GC safe. Thanks to Sarah Calvo Tue Dec 30 23:33:09 1997 Erick Gallesio * Extensions/posix.c: Integration of several new functions given by Shiro Kawai * Src/argv.c: The way arguments are processed has been changed: now the first argument is taken as a script name (unless there was already a -file option specified). Furthermore, when the -file option is used (implicitly or explicitly), the variable *program-name* is set to the name of the script file (instead of the file name of the interpreter). * Doc/Manual/stk.1: Adaptation of the man page for the new conventions for argument passing to the interpreter (-file option and implicit -file). * Src/eval.c: * Src/error.c: Bug correction: In some circumstances a buggy REPORT-ERROR can lead to an infinite loop. Now we can have the stack when in report-error AND the original error which caused the execution of the report-error procedure. Sun Dec 28 21:44:01 1997 Erick Gallesio * Lib/Match/normalize.scm: * Lib/Match/compiler.scm: * Lib/Match/descr.scm: Adaptation for STk. Mon Dec 22 00:00:54 1997 Erick Gallesio * Doc/Reference/Appendix.tex: New Appendix which describes the main differences between STk versions. * Src/extend.c: POINTER->STRING has been moved to file dynload.c and renamed C-STRING->STRING since ita accepts pointers AND strings now. Mon Dec 15 13:53:46 1997 Erick Gallesio * Src/print.c: Cosmetic change: When a procedure is writen, it displays its argument list. This is helpful when debugging * Src/number.c: Two new function for dealing with unsigned C numbers: long STk_integer2long(SCM x); unsigned long STk_integer2ulong(SCM x); * Src/extend.c: New primitive C-POINTER->STRING. This procedure converts a C-pointer to a string. An optionnal length can be given. Sat Dec 13 11:07:46 1997 Erick Gallesio * Src/stklos.c: * Src/slib.c: * Src/port.c: * Src/gc.c: Correction of various bugs signalled by Walter C. Pelissero * Src/syntax.c: Bug correction in definition of internal variables Wed Dec 10 23:25:21 1997 Erick Gallesio * Src/signal.c (handle_sigsegv_signal): new procedure. This procedure is called when a SIGSEGV is called. This avoid an infinite loop when a real SIGSEGV occurs. It just go to the toplevel (if the signal has not been redirected) Sun Dec 7 22:01:54 1997 Erick Gallesio * configure.in: Take into account the new libc (Gnu libc) for Linux. Wed Nov 19 09:34:22 1997 Erick Gallesio * Cleaning code of environment allocation. There is now a new type for frame cells (tc_frame). For now this type is equivalent to a cons, but it allows future optimization on environment allocation. Thu Nov 13 01:10:41 1997 Erick Gallesio * Src/proc.c: * Src/gc.c: * Src/eval.c: * Src/syntax.c: Cleaning of procedure creation code. All closures are created by the function STk_makeclosure (instead of being inlined in code). * Src/syntax.c: * Src/env.c: Correction of a long standing bug with internal defines management. In some cases, access to local variable could be false. This was because new variables were inserted at the beginning of the environment instead of the end. * Extensions/process.c (free_process): Standard ports were freed instead of closed when a process was deallocated. Bug discovered by Sarah Calvo Wed Nov 12 09:35:13 1997 Erick Gallesio * Src/list.c: new primitve: the R3RS last-pair Sun Nov 9 22:01:56 1997 Erick Gallesio * Src/list.c: * Src/primitives.c: New primitive: append! Tue Oct 28 21:24:02 1997 Erick Gallesio * Lib/match.stk: Integration of the Bigloo MATCH-CASE and MATCH-LAMBDA primitives Tue Oct 7 09:46:46 1997 Erick Gallesio * Extensions/posix.c (posix_stat2vector): bug correction (GC problems) * Src/proc.c (STk_for_each): minor bug correction: return an undefined result instead of NIL as before. * Lib/posix.stk: Two new functions POSIX-STAT->LIST and POSIX-LSTAT which make easier the use of stat function (they return a keyworded list instead of a (cryptic) vector. Wed Sep 17 15:39:54 1997 Erick Gallesio * Lib/tk-init.stk: New variable *image-path* which contains path for loading images. Tue Sep 16 16:29:51 1997 Erick Gallesio * Src/tcl-lib.c (Tcl_OpenFileChannel): build an error message when file cannot be opened. This is now done in Tcl. Note that the Tk8.0 code is not consistent here since it exists places where the check against NULL is done and other where it is supposed that Tcl fill the error message!!!! Sun Sep 14 11:22:48 1997 Erick Gallesio * STklos/Tk/Basics.stklos: New metaclass: . This is identical to the class , except that the widhet lives in its own toplevel window. Furthermore, this widget has a slot called TITLE which contains the title of the widget window. *STklos/Tk/*.stklos: added a "(select-module Tk) in all these files Sat Sep 6 22:07:39 1997 Erick Gallesio * Src/toplevel.c: names of display-prompt and display-result have been changed to repl-display-prompt and repl-display-result Wed Sep 3 18:18:45 1997 Erick Gallesio * STklos/Tk/Basics.stklos: * STklos/Tk/Button.stklos: * STklos/Tk/Menu.stklos: Addition of new Tk8.0 slots Fri Aug 29 12:17:58 1997 Erick Gallesio * Lib/tearoff.stk: File deleted. It is now included in menu.stk Wed Aug 27 15:46:25 1997 Erick Gallesio * Mp/Makefile: Path was incorrect when using fgmp. * Src/stklos.c: * Src/tk-main.c: Gc_protect is no more useful on modules since a module is always accessible from the module table. * Src/tcl-lib.c: Simulation of the new function "Tcl_DeleteCommandFromToken" used by the final Tk8.0 Mon Aug 25 12:27:11 1997 Erick Gallesio * Start of port for final Tk8.0. * Src/module.c: * Src/primitives.c: Modules are now stored in a private table instead of bound in the global space. The new primitive FIND-MODULE queries the module table to find a given module (modules are still first-class objects). * Tk/generic/tkWindow.c: Reverted the command "tk-state" to "tk" since the module names are no more bound in global space. Sun Aug 24 17:10:00 1997 Erick Gallesio * Src/module.c: There is now a module which is created when the interpreter is initialized. This module (named Scheme) exports all initial bindings (mainly primitives) defined when the interpreter starts. So, even when the user overload a standard primitive, the initial bindings can be found in the Scheme module. Wed Aug 20 14:02:06 1997 Erick Gallesio * Doc/Makefile: Installation of manual pages even if the documentation is not requested. Mon Aug 18 11:50:32 1997 Erick Gallesio * Doc/Manual/label.n: * Doc/Manual/grid.n: * Doc/Manual/frame.n: * Doc/Manual/font.n: * Doc/Manual/event.n: * Doc/Manual/entry.n: * Doc/Manual/destroy.n: * Doc/Manual/checkbutton.n: * Doc/Manual/button.n: * Doc/Manual/canvas.n: * Doc/Manual/bind.n: * Doc/Manual/bindtags.n: Documentation update for Tk8.0 Sun Aug 17 23:47:09 1997 Erick Gallesio * STklos/Tk/Basics.stklos: New class for the widget which have a "text-variable" or "variable" slot (Button, Checkbutton, Entry, ...) The corresponding widget have been changed to take into account this new class. Sat Aug 16 16:28:55 1997 Erick Gallesio * Tk/generic/tkButton.c: Buttons, Checkbuttons and Radiobuttons can use a :variable and :textvariable in a given environment. This environment is given with the new :environment option. Wed Aug 13 17:21:08 1997 Erick Gallesio * Src/error.c: The variables *last-error-message* and *last-error-arg* are set hen an error occurs. This is useful to find what error occured when errors are catched. This is also needed by Envdraw. Tue Jul 8 10:00:26 1997 Erick Gallesio * New type in the interpreter: tc_tclobjet. This type is necessary to simulate the Tcl "Tcl_Obj" type. Tcl_Obj is a crazy thing. Why Tcl does not use a GC, and life would be a *lot* easier (for me but for them too...) Mon Jul 7 09:59:49 1997 Erick Gallesio * Start of Tk8.0 integration Mon Jun 23 19:43:36 1997 Erick Gallesio * STklos/stklos.stk (class-subclasses): rewritten. It was too slow. Sun Jun 1 11:20:21 1997 Erick Gallesio * STklos/stklos.stk: (Tk-)virtual slots can now have an :initform option. Fri May 23 16:07:01 1997 Erick Gallesio * Src/stklos.c (build_initializers): build_initializers takes now one more parameter (the environment in which the class has been defined) Consequently, initializer are evaluated in the lexical environment of the class definition. * STklos/stklos.stk (compute-get-n-set): Standard behavior of class slots is now identical to CLOS: when a class-slot is inherited, it is shared with instances of the superclass. If it is redefined, a new slot is created Thu May 15 18:04:50 1997 Erick Gallesio * Lib/inspect-*.stk: Adaptation of the old inspector for the STk-3.x release. This is incomplete but it can be use until the Rigth Thing is finished. All the adaptation was done by Brian Denheyer . Thanks to him. * Src/proc.c (general_map): map was buggy with a null list of argument (map +) gave a core dump! Thu May 8 11:28:11 1997 Erick Gallesio * Src/port.c: Go back: LOAD and TRY-LOAD don't use anymore the environment parameter. In fact loading a file is done in the current module now rather at the global level as before. * Tcl/tclUtil.c (Tcl_DStringStartSublist, Tcl_DStringEndSublist): braces replaced by parentheses (bug signaled by Vincent Granet ) Sun Apr 6 15:07:20 1997 Erick Gallesio * Src/port.c: File loading: LOAD and TRY-LOAD accept now an optional second argument. This argument must be an environment which states in which environment the file must be loaded. Fri Apr 4 14:49:15 1997 Erick Gallesio * Lib/error.stk: Minor fix in the layout of display environment windows. Thu Mar 27 15:32:28 1997 Erick Gallesio * Src/toplevel.c (repl_loop): The interactive prompt is no more a constant. In fact, when the prompt must be displayed, we try to apply the thunk contained in the *prompt* global symbol (*prompt* must be a thunk). If an error occurs during this application, the usual "STk> " prompt is displayed. * Lib/init.stk: Adding a default *prompt* closure in the startup file Sun Mar 23 19:57:07 1997 Erick Gallesio * Src/toplevel.c (repl_driver): in the toplevel repl, the result is not displayed if we are not in interactive mode (suggested by a mail from Jesse Schell ) Fri Mar 14 14:00:51 1997 Erick Gallesio * Src/list.c (STk_append2): The old private append2 is now public since it is often used in the interpreter. Part of it using STk_append have been modified. Fri Feb 28 10:43:41 1997 Erick Gallesio * Src/read.c: New feature: multi lines comments (as in Common Lisp: #| ... |# ) * Src/stklos.c (STk_init_STklos): New MOP procedures generic-function-name generic-function-methods method-generic-function method-specializers method-procedure remove-method change-object-class Sun Feb 23 23:08:40 1997 Erick Gallesio * STklos/stklos.stk: New MOP procedures slot-definition-name slot-definition-options slot-definition-allocation slot-definition-getter slot-definition-setter slot-definition-accessor * Src/stklos.c: Instances type is now in the cell. This decreases globally the size of a STklos instance of the size of one int. * Two new classes: and . A is a method which cannot be call next_method. s are used for defining slot-readers and writers. Application of these methods are faster than normal method since the next-method object is not constructed. Mon Jan 20 15:59:24 1997 Erick Gallesio * STklos/stklos.stk (object-equal?): has been redefined to call eqv? rather than returning #f. This is the same thing except that when you redefine eqv?, it automatically redefine equal?. Furthermore, it is more coherent with standard Scheme eqv? and equal? Sat Jan 4 00:45:37 1997 Erick Gallesio * STklos/describe.stk: New DESCRIBE method for generic functions. Modification of DESCRIBE method for classes to take into account new class slots (specializers and initializers are no more displayed) * Src/stklos.c: STklos/stklos.stk: Modifications - when a slot does not exists, the gf slot-missing is called - when a unbound slot is read, the gf slot-unbound is called New primitives - slot-ref-using-class - slot-set-using-class - slot-bound-using-class? - slot-exists-using-class? * STklos/stklos.stk (change-class): change-class didn't initialize the slots added to the instance. This is done now (but this is a little bit different from CLOS: unbound slots in the "old" instances are initialized with the initform value in the "new" instance, whereas they remain unbound in CLOS). Wed Jan 1 11:44:45 1997 Erick Gallesio * Src/toplevel.c: Modification of copyright dates (we are (just) in 1997 now). Mon Dec 30 10:08:19 1996 Erick Gallesio * STklos/stklos.stk: STklos does not need hash table anymore. Sun Dec 29 22:24:24 1996 Erick Gallesio * Src/port.c (STk_autoloadp): Bug correction. Mon Dec 23 12:05:35 1996 Erick Gallesio * Src/io.c: old trace deleted * Src/extend.h: * Src/extend.c: Now, extended types are entered in the class hierarchy; When you define a new type, such as hash-table, a new class is defined. This class has a name which is built by adding brackets (<>) around the type name; this class always inherits from (that means that it is not possible to make fancy inheritance schemes with the current solution, which would have been too difficult to take into account with dynamic loading precedence problems). Sun Dec 15 11:04:10 1996 Erick Gallesio * Src/list.c: member: bug correction on circular lists * Src/list.c: New list functions: remq, remv, remove. Sun Dec 8 10:13:30 1996 Erick Gallesio * STklos/Tk/Toplevel.stklos: * STklos/Tk/Tk-methods.stklos: * STklos/Tk/Tk-classes.stklos: * STklos/Tk/Basics.stklos: Bug correction: Toplevel.stklos could be sometimes loaded several times. Toplevel is now loaded when doing a (require "Tk-classes"). Thu Nov 14 22:17:58 1996 Erick Gallesio * Tk/generic/tkConfig.c (Tk_ConfigureInfo): Bug correction for gadgets with only 1 option (such as separator in menus) * Demos/amib.stklos: Bug correction in code generation. It was possible to use a non yet defined widget in the ":in" option for "place" or "pack". Sat Nov 9 15:17:06 1996 Erick Gallesio * STklos/Tk/Composite/Scrolltext.stklos: * STklos/Tk/Composite/Scrollcanvas.stklos: * STklos/Tk/Composite/Scrollbox.stklos: Scrollbars are now managed by grid. Wed Nov 6 00:15:42 1996 Erick Gallesio * Tk4.2 integration. Sun Nov 3 18:53:57 1996 Erick Gallesio * Lib/www-browser.stklos: A new Web browser package. * Demos/webrowse.stklos: This demo replaces the hbrowse demo Wed Oct 30 16:19:46 1996 Erick Gallesio * Extensions/pixmap.c: upgrading pixmap package to the Tix 4.1b1 Tue Oct 29 00:54:05 1996 Erick Gallesio * Lib/www*.stk: New files for WEB browsing. Distant images and files are now correctly handled. A lot of ideas have been taken from the Harvey L. Stein WWW package. Wed Oct 23 16:53:19 1996 Erick Gallesio * Demos/stklos-widgets.stklos: New demo which replaces compo-demo since it contains demo for widgets which are not composite. * STklos/Tk/Widget/Balloon.stklos: new widget written in STklos * Lib/focus.stk: * Lib/tk-init.stk: binding for and are now set in tk-init.stk to avoid problems when this default binding must be overloaded by user. Bug signalled by Harvey J. Stein Mon Oct 21 12:29:07 1996 Erick Gallesio * STklos/active.stk: a new metaclass which provides actives slots. Actives slots are slots to which a function can be associated before/after reading/setting its value. The allocation is :active and functions can be set with :before-slot-ref, :after-slot-ref before-slot-set! or after-slot-set!. * STklos/Tk/Widget/Gauge: Two new widgets written in Scheme: and . They use the active slots metaclass. Thu Oct 17 14:50:29 1996 Erick Gallesio * Tk/generic/tkText.c: Modified "text dumping". It yields now a correct Scheme list. The :command option is not corrected correctly for now. Mon Oct 14 10:22:37 1996 Erick Gallesio * Extensions/socket.c: Correction of a bug in socket_shutdown (when GC occurs) Fri Oct 11 13:02:55 1996 Erick Gallesio * Extensions/socket.c (socket_shutdown): Bug correction in shutdown (shutdown and close where inverted). * Src/number.c: * Src/read.c: Some change in number reading (in particular for string<->number conversions which were buggy when number start with a #. Thu Oct 10 09:31:51 1996 Erick Gallesio * configure.in: * Src/primitives.c: Adding support por JPEG images Sun Oct 6 23:54:28 1996 Erick Gallesio * Src/stk.h: * Src/char.c: * Src/port.c: * Src/sport.h: * Src/io.c: * Src/print.c: Scheme characters were used as unsigned char without explicitely specify it. Modified some declarations to specifically say that chars were unsigned. Thu Sep 26 19:38:42 1996 Erick Gallesio * STk-3.1.1 Release * Demos/amib.stklos: Accessing help is now stk:show-help-file (the change was not reported) Wed Sep 25 14:40:21 1996 Erick Gallesio * Src/slib.c (STk_delete_Tcl_child_Interp): new function which must called by a child process just after a fork. This function is necessary to allow the dynamic loading of posix.so in snow (otherwise some Tk symbols are undefined). * Extensions/posix.c (posix_fork): Use now STk_delete_Tcl_child_Interp. * Src/number.c: Interface has been added for the Frank Schmuelling complex-number package. Don't rely on it, since rationnal and complex numbers will be present in a future release. As soon as the full tower will be implemented in STk, this door will be closed. Tue Sep 24 18:26:06 1996 Erick Gallesio * Lib/dialog.stk: The text of the dialog was reset to a message, instead of a label (when was the change done?) Mon Sep 23 22:52:10 1996 Erick Gallesio * Src/signal.c: A lot of modifications in signal handling. Major rewrite of some procedures. The '^Z' signal works again. BTW, I was unable to correctly catch a SEGV on linux (which is necessary to find that no more memory is available on Linux, since malloc never returns NULL this OS. Need more work. Sun Sep 22 23:54:44 1996 Erick Gallesio * Src/toplevel.c (finish_initialisation): replaced the hard-coded call to signal when using -f option to a call to the STk_set_signal_handler. * Src/slib.c (cannot_allocate): new private procedure called when there is no more memory during a must_malloc or a must_realloc (the old behaviour was incorrecte since it uses cons whereas there was no more memory, conducting to a buggy report-error message). However, the copy on write schem used by Linux cannot be detected by this procedure. It seems that we have to wait a SIGSGV signal. Tue Sep 17 10:03:49 1996 Erick Gallesio * Src/toplevel.c: Bug correction: only create the stdin handler when the process is interactive (Otherwise, STk interpreters launched in backgound by system keep locked -- heavily used in the Doc/README.html demo) * STklos/Tk/Composite/Multipaned.stklos: Orientation of Multi-paned didn't work since it was done with differents keywords (:orientation and :position) in some places (thanks to MIZUSHIMA Kazunori ) Fri Sep 13 08:22:41 1996 Erick Gallesio * STklos/Tk/Tk-methods.stklos: Bug correction in a method of focus (Erik Ostrom ) * Src/io.c: * Src/port.c: char-ready? was incorrect when used on stdin (thanks to Erick Ostrom) * STklos/Tk/Text.stklos: Correction of the value field of text widgets. Tk always add a newline at end of buffer. * Lib/tk-init.stk (%redefine-Tk-command): After STklos was loaded, each call to focus implies the loafing of file focus.stk !! * Extensions/socket.c: Added support for sockets on Win32 (thanks to Caleb Deupree ) * Src/unix.c: Added the VC++ support for file globbing (thanks to Caleb Deupree ) Wed Sep 11 23:05:32 1996 Erick Gallesio * Src/tk-main.c: command line argument handling for -geometry was broken. Thanks to Harvey J. Stein Fri Sep 6 18:20:28 1996 Erick Gallesio * Extensions/stack.c: Replaced FILEPTR by PORT_FILE in the stack demo. Thanks to Jean-Marie Kubek * configure.in: Get rid of '-n' on echo commands. This option is not supported under Solaris 2.x Wed Sep 4 13:16:38 1996 Erick Gallesio * configure.in: X11 libs/includes in non standard place were not taken into account even when a --x-libraries or a --x-includes was given to the configure script. Mon Sep 2 10:46:06 1996 Erick Gallesio * Tk: updraded to Tk4.1p1 * Src/eval.c: Bug correction in eval.c: arguments were not evaluated when the generic function is implemented in Scheme rather than in C. (Thanks to Jean-Christophe Pazzaglia ) * Lib/dialog.stk: Added a binding to the dialog window that sets the result to -1; this is needed in case something happens that destroys the window, such as its parent window being destroyed. Thu Aug 29 13:43:13 1996 Erick Gallesio * Src/slib.c (STk_quit_interpreter): replaced Tcl_DeleteInterp by a call to delete the command ".". Otherwise, when the interpreter delete all the commands and find ".", the process becomes recursive. This yield problems when the interpreter has already allocated images. Sat Aug 24 15:48:40 1996 Erick Gallesio * Src/io.c (STk_getc): Bug correction: when a handler was set on stdin, and the process was interactive, the system loops indefinitely. * Lib/text.stk: Typo on *tk-strict-motif* for Fri Aug 23 22:24:33 1996 Erick Gallesio * Src/toplevel.c (finish_initialisation): Modifications to allow using stdin when using the "-f" option. Signaled by Erik Ostrom Sat Aug 17 11:21:30 1996 Erick Gallesio * Src/io.c: Tcl_DoOneEvent parameter was "TK_DONT_WAIT", which is no more necessary and which greatly increase cpu usage when used interactively. Tcl_DoOneEvent is now 0 Tue Aug 13 18:00:10 1996 Erick Gallesio * STklos/Tk/Composite/*.stklos: Avoid to use a (require "Tk-classes") since it can condut to problem if normal widget have been loaded by hand before (i.e. without using Tk-classes) * Lib/posix.stk: The definition of posix-access? was inverted. * Src/posix.c (posix_access): corrected error messages typos. * Mp/Makefile: replaced make by $(MAKE) * New directory: Doc/LaTeX-packages: This dictory contains packages which ares used in documentation but which are absent from some Latex distributions. * Lib/process.stk: mispelling in string-append. Grrr. * Tk/configure: Bug correction: Not everybody has "." in its PATH. * Tk/unix/Makefile.in: Bug correction signalled by Matthew.R.Wette@jpl.nasa.gov for X11 include files placed in non standard place * Lib/Makefile: Bug correction signalled by Matthew.R.Wette@jpl.nasa.gov when installing Lib files * configure.in: Changed Linux 2.x namimg scheme (I forgot that Linux is now in 2.0!) Wed Jul 24 00:04:49 1996 Erick Gallesio * STk-3.1 Release * Src/stklos.c: The slot "name" in methods (which was always (buggyly) set to "???") is gone. A new slot replace it: "generic-function". The value of this slot is the generic function to which the method belongs. Anonymous function have a "generic-function" set to #f. Potential problem: an anonymous method can be added to two different GFs. In this case, the slot "generic-function" will be incorrect. However, this should not be a problem since 1. anonymous method are rare 2. this is only used by STklos to find the class of the gf (and not the gf itself) of a method when there is no next-method when we applying a next-method.... * Tk/unix/tkUnixWm.c: A lot of adaptation to Scheme (empty lists replaced by #f, mainly). This modificcations were needed for amib whose save/restore didn't work in 3.0. * Tk/generic/tkPlace.c: Bug correction in the info suboption Tue Jul 23 10:11:28 1996 Erick Gallesio * Src/argv.c (STk_process_argc_argv): has been rewritten and is table driven now. Parameters are processed analysed differently now: the "--" option has been added to allow a clear separation between interpreter arguments and scripts arguments (as in Tcl). However, interpreter arguments must precede scripts arguments (this is different from Tcl, but more Unixish). * Src/tk-main.c: Bug correction: if visual was incorrect the program enter in an infinite loop. * Doc/Makefile: Tk Manuals pages are now prefixed by "stk_" to avoid confusion with original Tk ones. They are always placed in a subtree of the STk tree installation since it eases the distribution of binary releases. * New demo: mc-server a multiple-client server. This is a first version, because this demo should be graphical to see connections and deconnection as they arrive. (Next release) Mon Jul 22 15:53:44 1996 Erick Gallesio * BINARY_DISTRIB: description of the way to make binary releases. Binary release will be stored in ftp://kaolin.unice.fr/Binary * Lib/init.stk: Lib/Makefile.in: Adding a site-scheme directory. This is the standard directory for non standard stuff. Local scheme files or extensions can be put in this directory. Sun Jul 21 17:53:35 1996 Erick Gallesio * Lib/init.stk: added the variable *shared-suffix*. It is equal to "so", except on HP-UX whers it is set to "sl". All the Lib/*.stk* files haves been modified to use this variable rather than hardcode the usual ".so". I hope it will be OK for HP users. * Src/port.c (STk_open_file): new mode accepted "a" (for append). Fri Jul 19 14:36:04 1996 Erick Gallesio * Src/posix.c: - Renamed posix-access to posix-access? (old name exists for compatibility but will be garbaged in afuture version) - Added the constant X_OK which was missing Thu Jul 11 22:21:30 1996 Erick Gallesio * Src/posix.c: New primitives: posix_host_name and posix_domain_name based on gethostname and getdomainname (POSIX.1 does not define these functions, but ISO/IEC 9945-1:1990 mentions them in B.4.4.1., according to the Linux documentation. * Src/posix.c: New primitive: posix-uname Fri Jul 5 19:41:38 1996 Erick Gallesio * Lib/html.stk: Addition of the tag with SIZE and COLOR sub-tags. This must be compatible with the HTML spec. The tag which was STk-specific is deleted Mon Jun 10 00:05:16 1996 Erick Gallesio * Port implementation is different: A port contains now its input and output handler. String ports have been changed accordingly. Sat Jun 1 21:23:01 1996 Erick Gallesio * STk works on Win32: However, there are a lot of minor things which are not correct (fonts, cursors). It seems that most of this small problems are already resolved with Tk 4.1 (the official one). OK, start to port from Tk4.1a2 to Tk 4.1. The main probleme will very probably be with the event loop. Mon May 27 10:42:58 1996 Erick Gallesio * Renaming files in STklos/Tk and STklos/Tk/Composite: they have now a .stklos suffix (rather than .stk), because Win32 filenames are not really case sensitives. Sat May 11 08:33:22 1996 Erick Gallesio * Integration of code modification for WIN32 port (snow only) Fri Apr 26 09:26:10 1996 Erick Gallesio * Src/primitives.c: * Src/gc.c: * Src/tcl-lib.c: Widgets don't capture anymore the environment. This was necessary before release 3.0, but useless now. As a matter of fact, widget-environment primitive has also been suppressed. Since it was never documented, I doubt that someone will cry for it. * Src/cont.c: Bug: Changed "#ifdef sun" by "#ifdef sparc" for flushing the registers window Useful for Sun3 (bug signaled by Michael A. Patton ) * Lib/menu.stk: Tk:option-menu: function added (identical to the Tcl one) Thu Apr 25 23:10:37 1996 Erick Gallesio * Tk/generic/tkMenu.c: Bug correction: tearoffmenucommand was not defined as a closure. Wed Apr 24 16:21:42 1996 Erick Gallesio * Src/stklos.c: New protocol around gf: the following methods are now called when an error occur with a gf call: * no-next-method ((gf ) args) as CLOS * no-applicable-method ((gf ) args) as CLOS * no-method ((gf ) args) when calling gf without method Tue Apr 23 23:02:26 1996 Erick Gallesio * STklos/stklos.stk: New protocol for calling standard generic functions. This protocol is not used for real function (in this case we use a completly C hard-coded protocol). When a subclass of is applied, the interpreter uses the new protocol instead of the C one. This "opens" the generic function mechanism: - special generic function can easily coded in Scheme (but they will be slow) - standard generic functions are as fast as possible. This protocol provides the following generic functions: * apply-generic ((gf ) args) * sort-applicable-methods ((gf ) methods args) * method-more-specific? ((m1 ) (m2 ) targs) Mon Apr 22 23:50:18 1996 Erick Gallesio * Src/boolean.c: * Src/proc.c: * Src/print.c: * Src/gc.c: * Src/stklos.c: * Src/eval.c: STklos integration. Generic functions are recognized now by the interpreter as standard STk objects (i.e. stklos is no more a dynamically loadable extension). This integration provides: - faster gf (the old way to implement gf is very general and is not efficient (each call to a generic function implied to search the way to apply the generic function in a table). - gf are now properly tail recursive. Fri Apr 19 23:53:32 1996 Erick Gallesio * Src/print.c: Change -- address printing: the "#p" is no more used when displaying an address. The #p is kept for Tk (of course) and when using write. Sun Apr 14 19:05:50 1996 Erick Gallesio * Demos/compo-demo.stklos: New compo-demo for * STklos/Tk/Composite/Multiwin.stk: 2 new composite widgets: : a window which can contain several windows : a window embedded in a The look is very similar to the Windows 95 explorer. Sat Apr 13 21:58:18 1996 Erick Gallesio * Tk/generic/tkEvent.c (Tk_AfterCmd): Bug correction for after idle Sun Mar 31 22:38:54 1996 Erick Gallesio * Src/unix.c: New primitive: setenv! Fri Mar 29 15:06:46 1996 Erick Gallesio * Src/gc.c (allocate_new_heap): Don't use must_malloc here since it can conduct to call GC when allocating large heaps (typically with large -cells xxx). Mon Mar 25 14:20:21 1996 Erick Gallesio * STklos/Tk/Canvas.stk: bind-for-dragging: bug correction end enhancement. You can now specify a :before-motion and :after-motion scripts. The old :motion is always accepted (it's equivalent to :after-motion). If the :before-motion closure returns #f, the object is not displaced and the :after-motion closure is not applied. Mon Feb 26 16:11:30 1996 Erick Gallesio * STklos/stklos.stk: Two new methods are defined in STklos: object-eqv? and object-equal?. They are called when doing an eqv? or an equal? on STklos instance. These methods, which can of course be specialized, return #f. * Src/boolean.c: Extended types can now have a compare function which is called when eqv? or equal? is called. This function is called when one of the arguments of eq*? is of an extended type. See the document on Extending STk for details. Sat Feb 24 01:47:06 1996 Erick Gallesio * Port of STk on Tk4.1a2. This should simplify the port on Windows. Mon Feb 19 17:19:49 1996 Erick Gallesio * Src/toplevel.c (repl_driver): STk_interactivep was not correctly initialized. This seem to be a regression (or a quirk in the home & work files) Fri Feb 16 14:49:48 1996 Erick Gallesio * Src/number.c (do_integer_division): Correction of a bug signalled by Raymond Toy . Integer division of bignums was buggy (aka Pentium symptom (except that it was always erroneous)). Mon Feb 12 00:03:55 1996 Erick Gallesio * Extensions/pixmap.c: Pixmap implementation uses now the file tixImgXpm.c from the Tix Library (Author: Ioi Kim Lam). This implementation doesn't need the Xpm library (which is difficult to locate automatically with configure script and which has several version with compatibily problems). Wed Jan 24 11:52:49 1996 Erick Gallesio * Src/print.c (STk_print): Bug correction. Print of special char in Strings was buggy. Thanks Drew.Whitehouse@anu.edu.au for signalling it. have also added \v and \a that I have forgot. * STklos/Tk/Composite/Scrollcanvas.stk: Correcting a small typo error signaled by Ralf Berger . Sun Jan 21 23:57:37 1996 Erick Gallesio * STk-3.0 (official) release (aka known as 3.0b2 since I have forgot to set the correct version name. Sun Dec 10 21:37:17 1995 Erick Gallesio * Src/promise.c (STk_force): Bug correction for recursive expression in a force. It is now conform to R4RS. (define c #f) (define p (delay (if c 100 (begin (set! c #t) (+ (force p) 1))))) returns now the value 100 (and not 101). This bug was raised with test.scm. ******************* Changelog was not maintained for a while. I will try to update it later. Sorry. ******************** Sat Oct 7 14:57:01 1995 Erick Gallesio * STk-3.0b1 release Tue Jul 18 08:46:49 1995 Erick Gallesio * Starting STk 3.0 .... Mon Jul 17 20:55:27 1995 Erick Gallesio * 2.2 Release * Src/syntax.c (STk_syntax_begin): begin, and & or were not always tail recursives. This bug was detected (and corrected) by Lars Thomas Hansen * Doc/Reference/Reference2.tex: Documentation of new hash tables Sun Jul 16 10:30:26 1995 Erick Gallesio * Snow/run-snow.in: * Src/run-stk.in: I have changed the machine determination scheme to avoid problems on Sun (sun4m sun4 sun4c... are all the same, at least for STk). For Linux, there is no more differerence between the Intel rocessor used for compiling STk (i{345}86 are all the same). * Src/dynload.c: * Src/configure.in: * Src/Makefile.in: * configure.in: * Makefile.in: Support for ELF format under Linux. Thanks to Johann Friedrich Heinrichmeyer and * Src/slib.c (STk_machine_type): * Src/toplevel.c (print_banner): MACH define has been changed by MACHINE to avoid problems with Mach systems. Sat Jul 16 23:30:27 1995 Erick Gallesio * Doc/Extension/Extending.tex: Adding documentation for Tcl widget integration Thu Jul 13 09:04:54 1995 Erick Gallesio * Doc/Reference/Appendix-D.tex: Description of Ilisp, CMU Scheme packages * Doc/Manual/stk.txt: New manual page. Manual page is now installed in $(prefix)/man/man1/stk.1 * Src/error.c (STk_err): Don't print a line number when error comes from stdin. * Src/stk.h: * Src/toplevel.c: * Src/argv.c: New option: -interactive to force the interpreter to be interactive, even if it doesn't seem to be. This is useful when using STk under Emacs. When STk is interactive, stdout and stderr are now unbuffered. * Src/port.c (STk_init_standard_ports): line buffering of Stderr has been deleted. Everything is done now in toplevel.c (depends on the -interactive flag * Lib/regexp.stk: Bug correction in regexp-replace-all when replacing string appears in the string to replace. Correction is due to Sean Slattery Wed Jul 12 09:57:10 1995 Erick Gallesio * Src/syntax.c (syntax_let_family): Don't signal an error if a symbol is defined twice in a let*. Formal semantics given in R4RS allows it (whereas textual explanation seems to forbid it. Problem was found by Brent Knight . * Src/port.c: New definition of macro READ_DATA_PENDING for ELF compiling. Thanks to Jin S. Choi for the bug correction. * Lib/init.stk: Macros are now defined in the global environment. This avoids problems when some primitives procedure are redefined. All the primitive should be protected for those redefinitions. * Lib/Makefile (install): prolog.ps is now placed in the good directory * Tk/tkCanvas.c (CanvasWidgetCmd): Correction of a bug signaled by Johann Friedrich Heinrichmeyer. The result of the poscript command must be "stringified". Tue Jul 11 21:16:17 1995 Erick Gallesio * STklos/Tk/Canvitem.stk (initialize-item): INCOMPATIBLE CHANGE in canvas has been renamed in to avoid a conflict when using both cnavases and texts widgets. Demos have been modified to take this modification into account * STklos/Tk/Composite/Scrollcanvas.stk (): * STklos/Tk/Composite/Scrollbox.stk (): Bug correction in background propagation. (Bug signaled by H. J. Stein) Tue Jul 11 16:31:44 1995 Erick Gallesio * Correction of several bugs signaled by Eric Ostrom on text widget Fri Jul 7 23:27:17 1995 Erick Gallesio * Tk/tkWindow.c (Tk_CreateMainWindow): * Src/toplevel.c (init_interpreter): Init system path from STK_LIBRARY shell variable. This variable MUST be initialized now (this is done in the stk or snow scripts). This allows us to make binaries which are independant of their location. This will permit to distribute binaries on kaolin. * Src/hash.c: Modification of the hash table module to take into account an optional parameter which specifies the comparison function. This permits to have equal? eqv? eq? or string? hash tables for instance Tue Jul 4 14:04:49 1995 Erick Gallesio * Src/port.c: * Src/sport.c: Minor code cleaning (using STk_is_thunk) Fri Jun 23 22:27:26 1995 Erick Gallesio (eg@unice.fr) * STklos/Tk/Composite/Scrolltext.stk (): bug correction in background propagation Mon Jun 5 18:03:47 1995 Erick Gallesio (eg@kaolin.unice.fr) * STk-2.1.7 release * Extensions/posix.c: An extension for using Posix primitives in Scheme. Far from complete. This is just a start. Any help on this point would be appreciated. * Doc/Extension/Extending.tex: A new version which is more (but not totally :-<) complete. * Extensions/stack.c: a new file used for illustating the document "Extending the STk interpreter" * Demos/amib.stklos: A new version of the interfac builder which is usable now. This version handle the packer and the placer. * STklos/Tk/Composite/Multipaned.stk (initialize-composite-widget): Addition of the Multipaned composite widget. Thanks to Harvey J. Stein, for his modifications. Sat Jun 3 00:44:53 1995 Erick Gallesio (eg@unice.fr) * Lib/init.stk: * Src/syntax.c: Rewritting of "while" and "unless" in C * A new type: tc_ssubr. This type is temporary and will change in the next release. This type correspond to all n-ary functions of number.c. Correction of an ENNORMEOUS bug: There was a double evaluation when fsubr where called by apply!!!. Fsubr cannot be applyed now (ssubr are the only procedure with non evaluated parameter which can be appyed. * Src/proc.c (STk_procedurep): (Procedure? a-tk-command) => #t now * Lib/inspect-misc.stk (inspect::typeof obj): correction of a bug introcuced in the inspector by previous modification Fri Jun 2 00:07:20 1995 Erick Gallesio (eg@unice.fr) * Src/gf.c (find_method): Code cleaning. Thu Jun 1 19:29:39 1995 Erick Gallesio (eg@unice.fr) * Src/port.c (do_load): I have added a comment when a file has finished to be loaded, as suggested by David Fox. * Src/gc.c (gc_sweep): GC calls now Tcl_DeleteCommand when a new command is deleted. See below ... * Src/tcl-lib.c: Modifications of {Create,Delete}Interp and {Create,Delete}Command to really execute the detete code of a Tk-command. This seems to be useful only for the send command annd "." command (but would also be probably useful for future tcl extensions). The "send" associated delete proc permits to unregister the interpreter from the X server (bug signalled by Sean Slattery slttery@GS148.SP.CS.CMU.EDU and that I have never seen !!!!). Mon May 29 17:04:53 1995 Erick Gallesio (eg@unice.fr) * STklos/Tk/Message.stk (): Deleteing the class from class. This was erroneous. Fri May 26 23:52:40 1995 Erick Gallesio (eg@unice.fr) * STklos/Tk/Toplevel.stk (): Adding the :init-keyword for class and display slots. This modification was necessary for the new AMIB. Min-size and max-size slots contain now a string and class and display slots contain a string (it was a symbol) * STklos/Tk/Frame.stk (): Adding the :init-keyword for class slot Class slot contains a string (it was a symbol) Fri May 19 22:44:59 1995 Erick Gallesio (eg@unice.fr) * Src/sport.c (STk_get_output_string): Correction of a bug signalled by Fritz.Heinrichmeyer@fernuni-hagen.de Wed May 3 12:59:24 1995 Erick Gallesio (eg@unice.fr) * STklos/Tk/Composite/Paned.stk (motion-grip): Applying the patch of Harvey J. Stein which constraints the grip ]0..1[ This permits to avoid its disappearance. Tue May 2 00:05:55 1995 Erick Gallesio (eg@unice.fr) * STklos/Tk/Tk-methods.stk: This file is always loaded now (it was loaded only when Tk was initialized before). Read the comment in this file when re-using STk images. *top-root* initialization is in Tk-methods.stk rather than Toplevel.stk now. * Lib/tk-init.stk (Tk:initialized?): a new variable which is set to #t when Tk is fully initialized Mon May 1 16:55:18 1995 Erick Gallesio (eg@unice.fr) * Src/stklos.c (display_instance): * Src/error.c (STk_err): * Src/eval.c (STk_show_eval_stack): * Src/port.c (STk_write): * Src/tk-glue.c (STk_convert_for_tk): * Src/toplevel.c (repl_loop): * Src/extend.c (internal_display): * Src/print.c (STk_print): All those files have been modified for giving the port (a SCM object) to the procedure which do a print rather than a FILE *, which is more general. This modification is necessary for permitting a real display_object in extension. STklos uses this for the {write,display,tk-write}-object methods. Tue Apr 25 14:57:48 1995 Erick Gallesio (eg@kaolin.unice.fr) * Src/number.c (STk_gcd): Bug correction in lcm, gcd, min and max (arguments were evaluated several times!!!!). Tue Apr 18 14:55:23 1995 Erick Gallesio (eg@kaolin.unice.fr) * STklos/Tk/Composite/Scrolltext.stk: New file. It implements what you think it should!! * STklos/Tk/Composite/Scrollcanvas.stk: New file. It implements what you think it should!! * STklos/Tk/Composite/Scrollbox.stk (): Scroll listbox accept now horizontal scrollbar. Sat Apr 15 15:40:40 1995 Erick Gallesio (eg@unice.fr) * Tk/tkListbox.c (ListboxWidgetCmd): Correction of an old old bug: Getting an element of listbox always retusrns a string. However, this modification breaks down the inspector.... (it is time to rewrite it....) Fri Apr 14 23:32:42 1995 Erick Gallesio (eg@unice.fr) * Src/number.c (STk_round): Bug correction. (Round x) must returns the closest integer to x, rounding to even when x is halfway between two integers. Fri Mar 31 00:15:36 1995 Erick Gallesio (eg@unice.fr) * Src/configure.in: Adding test for the existence of the pid_t type. This is needed for porting STk on Sony WS (Sony NEWS, NEWSOS 4.2R) Thanks to Nobuyuki Hikichi * Lib/init.stk (random): have been extended to allow the result to be a bignum. Here again, thanks to Nobuyuki Hikichi Sat Mar 25 23:33:54 1995 Erick Gallesio (eg@unice.fr) * STk/read.c: Modification of the reader to remember current filename and line counters. This eases debugging since error messages can display those informations. Thu Mar 16 15:32:59 1995 Erick Gallesio (eg@kaolin.unice.fr) * Src/extend.c (STk_define_C_variable): New function. This function permit to establish a link between a C variable and a Scheme one. Once this link is established, every reading of the variable will call a getter function and every write will call the setter function. No data is used in the Scheme space, variable value is a C data. Wed Mar 15 17:21:40 1995 Erick Gallesio (eg@kaolin.unice.fr) * New primitive type: C-pointer. This is a Scheme type to wrap a C pointer. It greatly eases communication with C. * Src/extend.c: New file. This file contains all the code for extensions and C pointers. It contains a ot of code from old dynload.c. File dynload.c contains now only the function which do dynamic loadind (and which is very sytem dependant. Tue Mar 14 13:30:11 1995 Erick Gallesio (eg@kaolin.unice.fr) * Src/slib.c (STk_internal_eval_string): Bug correction. The error context was false. Fri Mar 10 15:55:47 1995 Erick Gallesio (eg@kaolin.unice.fr) * Src/userinit.c (STk_user_cleanup): STk_user_cleanup has been added. * Src/port.c (STk_init_standard_ports): Error file is now line buffered. This gives better performances when used under emacs. Thu Mar 9 12:49:43 1995 Erick Gallesio (eg@kaolin.unice.fr) * Added support for dynamic loading under Linux (with DLD). Code is inspired from a contribution of Patrick Nguyen (pnguyen@elde.epfl.ch) Sun Mar 5 16:06:11 1995 Erick Gallesio (eg@unice.fr) * Src/port.c (STk_char_readyp): Added support for char-ready. Code should not be very portable... Sat Feb 25 11:51:45 1995 Erick Gallesio (eg@unice.fr) * Src/slib.c (STk_get_internal_info): Bug correction: the result was completely erroneous. Is it possible that I have tested this function without having seen this???? * Dynamic loading should work for OSF1 (Thanks to Erik Ostrom ) Sun Feb 12 18:00:15 1995 Erick Gallesio (eg@unice.fr) * 2.1.6 release Sat Feb 11 23:23:15 1995 Erick Gallesio (eg@unice.fr) * Src/env.c (STk_parent_environment): New function. It was time to write it... * Src/port.c (STk_error): Set context to ERR_OK but keep the bit indicating if error must be caught or not. * New version of blt for STk. Some minor changes for compiling it with new C conventions. Thu Feb 9 23:21:52 1995 Erick Gallesio (eg@unice.fr) * STklos/Tk/Basics.stk: Tk::find-option is defined as autoload to permit image creation. * STklos/Tk/Toplevel.stk: Definition of *top-root* is deferred until first creation (to allow image creation) * STklos/Tk/Tk-methods.stk: New file. This file contains the redefinition of Tk commands as methods. This file is loaded when the first Tk object is really created. Deferring the loading of this file permits to make images of interpreters containing Tk classes. Thu Feb 2 23:15:15 1995 Erick Gallesio (eg@biot) * Src/unix.c (absolute): Bug correction for file name with mutiple dots such as "...1../2" which were improperly expanded * Src: Yeaaah. All the symbols defined by STk are now prefixed by "STk_". It tooks me some days to obtain this. I take this occasion to pass through the code and try to ameliorate things rather than using brute force. Wed Feb 1 02:17:12 1995 Erick Gallesio (eg@biot) * Socket support has been rewritten. It is now configured by default. New model seems more simple (at least for me) and more coherent with the process extension. Tue Jan 31 10:30:29 1995 Erick Gallesio (eg@kaolin.unice.fr) * Modification of all Makefile to use $(MAKE) rather than make as suggested by Christian Lynbech Mon Jan 30 15:22:06 1995 Erick Gallesio (eg@kaolin.unice.fr) * Tk/tkConfig.h: Modifications for HPUX. Sun Jan 29 15:11:06 1995 Erick Gallesio (eg@biot) * Src/process.c: Completely cleaned up. Table of processes is managed by the SIGCHLD signal if it exists. On machines without job control, process management is done by hand. Some new function have been added (suggested on the mailing list by Giorgio Cesana ): process-exit-status, process-stop, process-continue, process-send-signal. (run_process): A new option: ":host" which permits to execute the command on a distant host. Mon Jan 23 12:07:23 1995 Erick Gallesio (eg@kaolin.unice.fr) * Src/tk-main.c (Tk_main): adding code for managing argument line -geometry option. It was missing.... * Src/stklos.c (make_primitive_classes): Adding the new primitive class which is the ancestor of and . Suggested by Harvey J. Stein (hjstein@math.huji.ac.il) Sun Jan 22 18:12:02 1995 Erick Gallesio (eg@biot) * Demos/inspector.stk: A small demo, for showing usage of the inspector with Tk object. A very simple thing but this seems to be rather unknown. Sat Jan 21 23:01:15 1995 Erick Gallesio (eg@biot) * Src/read.c (lreadr): Cosmetic changes. Using the sym_XXX variables instead of interning them at each time. * Src/gc.c (allocate_new_heap): Setting of the field gc_mark to 0 for all new allocated cell. Thanks to Chet Murphy for this bug correction. * Src/toplevel.c (init_interpreter): Bug correction: sym_unquote was gc protected twice whereas sym_unquote_splicing was not. A cut/paste error which took 2 days to debug :-( Mon Jan 9 12:06:08 1995 Erick Gallesio (eg@kaolin.unice.fr) * Configure and Mafefile files modifications to allow dynamic loading under Irix 5.3. Thanks to Michael Tiemann for the patches. Sun Jan 1 21:10:45 1995 Erick Gallesio (eg@biot) * One important thing :-) Adding 1995 in all the files which contains a copyright notice. This is the good day for doing that (an only that!). Fri Dec 30 17:56:40 1994 Erick Gallesio (eg@biot) * New organization of Tcl files. All The Tcl files have been updated to release 7.4b1 (the Tcl release that comes with Tk 4.0b1). The file Src/tcl-util.c has shrink a lot and most of it is now in Tcl/tlUtil.c (in fact a copy of the original file with some #ifdefs). This last change is break the previous philosophy of libtcl.a (a library of Tcl file *unmodified*) but changes are minor and I hope that it will ease the port to new version of Tcl/Tk which semble very instable at this time. Wed Dec 28 18:14:22 1994 Erick Gallesio (eg@biot) * Lib/error.stk (report-error): Modification of error message format * Src/primitives.c: Deleting the definition of the "lindex" primitive which doesn't serve anymore. Tue Dec 20 12:02:00 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/syntax.c (syntax_define): "Bug" correction: When using a local "define", There was a duplication of the binding if the symbol was already defined in the out most environment. Since the new binding was placed before the older one, good value was found. However, it makes environment bigger than necessary (and strange result when using environment->list). * Src/env.c (value_in_env): New function. It returns the value of var in given env. Search is done only at out most level. This function is an utility function for local "define". Mon Dec 19 12:08:31 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/stk.h (MAX_CHAR_CODE): Correct value is 255 (it was 256) Fri Dec 16 16:06:57 1994 Erick Gallesio (eg@kaolin.unice.fr) * STk 2.1.5 release Fri Dec 16 13:56:25 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/dynload.c: Adding support for HPUX (thanks to ipankar Gupta ) Fri Dec 9 22:15:34 1994 Erick Gallesio (eg@biot) * Snow/run-snow.in: There is now a new interpreter, called snow (for Scheme NO Window), which is the STk interpreter without Tk support. This interpreter is an independant executable. It can be called with the snow shell-script or by unsetting the DISPLAY variable. Thu Dec 8 22:47:44 1994 Erick Gallesio (eg@biot) * Makefile.in: Modifications of all configure.in and Makefile.in. Now we can - share versions of STk between different architectures - have several versions of STk installed on the same machine Wed Dec 7 21:46:44 1994 Erick Gallesio (eg@biot) * Src/dynload.c (load_object_file): Adding dynamic loading support for NetBSD-1.0 (i386-port). Thanks to Franke Ruediger (Ruediger.Franke@rz.tu-ilmenau.de) for the patch. Tue Dec 6 00:26:48 1994 Erick Gallesio (eg@biot) * Src/tk-glue.c (execute_Tk_lib_cmd): GC bug correction. There was a bug when a GC occured during the creation of the argv array of a Tk command. This bug occured on Linux with -O2; Correcting it doesn't arrange things==> Usage of an equivalent code. Thanks to H. Stein for signaling this bug. Sat Nov 26 10:46:58 1994 Erick Gallesio (eg@biot) * Src/stklos.c: Changing all the "class" variables by "clath" for C++ users * Src/port.c (loadfile): All the code for loading file is now written in C and things are more "orthogonal". New variable defined: *load-suffixes*. * Src/toplevel.c (repl_driver): Move of user init initialisation so taht they are taken into account in case of a "stk -f" (thanks to Brian Webb webbb@aies.tucson.saic.com) Wed Nov 9 13:54:34 1994 Erick Gallesio (eg@kaolin.unice.fr) * STk-2.1.4 release Thu Nov 3 23:20:06 1994 Erick Gallesio (eg@biot) * A New datatype: regular expressions. They are defined in a dynamic loadable file (for the regexp compiler and the apply function) and in a Scheme file (mainly for the regexp-replace[-all] procedures Wed Nov 2 16:49:07 1994 Erick Gallesio (eg@kaolin.unice.fr) * file-is-xxx? and file-exists? are now written in C * Elimination of %file and %string Tcl command. Those commands were used behind the scene to avoid some rewriting. No code in the distribution should use them. This conduct to the defineition of two new primitives string-index and file-is-executable? (which was forgotten in previous releases). Mon Oct 31 11:04:27 1994 Erick Gallesio (eg@biot) * Src/hash.c (hash_table_stats): Circumvent a bug in Tcl code on empty hash tables (see comment in source file) Fri Oct 28 14:23:36 1994 Erick Gallesio (eg@biot) * STklos/Tk/Toplevel.stk (): All the "wm" Tk-command options are now available through Toplevel slot accesses (Idea from Rob Deline) A New global variable: *top-root*: This is a toplevel which contains the *root* window. Changing the name of the root window can now be done by (set! (title *top-root*) "New title") Tue Oct 18 14:42:55 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/number.c (lround): Rewritten to avoid the use of the rint(3) function which does'nt seems to exist on some systems (SCO and some HP at least) Mon Oct 17 18:29:31 1994 Erick Gallesio (eg@biot) * Lib/editor.stk (stk:all-fonts): Various font specifications changes (those which where used in all the Lib directory where not portable. Mon Oct 17 11:38:17 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/slib.c (lrandom): Bug correction (bignum where not allowed as parameter => (random(random 10)) was invalid since result of random is always a bignum (bug signaled by Markus Armbruster ) Fri Oct 14 09:02:12 1994 Erick Gallesio (eg@kaolin.unice.fr) * New procedure: run-process which permit to run a process with redirection off the stdin, stdout and stderr. The code is a rewriting of the Alexander Taranov, Grygory Niconov and David Tolpin contribution. Thu Oct 13 14:56:05 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/number.c: Add a rint compatible function for systems which desn't provide one (SCO apparently -- signaled by markd@grizzly.com) Wed Oct 12 15:12:51 1994 Erick Gallesio (eg@kaolin.unice.fr) * New functions for port manipulation (port->string port->string-list ....) With those function, it is easy to write a Tcl-like exec. All those function are written in Scheme. Tue Oct 11 15:53:49 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/slib.c (set_random_seed): modified to allow bignums for the seed. Mon Oct 10 14:16:52 1994 Erick Gallesio (eg@kaolin.unice.fr) * Minor modifications to allow a better compilation on some C and C++ compilers. Sun Oct 9 18:19:01 1994 Erick Gallesio (eg@biot) * Bug correction: the eval_stack (which serves ONLY for displaying context upon error was not corectly managed on "tail recursion elimination". This leads to memory consumption on infinites loops. Tue Sep 27 11:46:01 1994 Erick Gallesio (eg@kaolin.unice.fr) * STklos/tk-classes.stk: Creation of a new file which define a set of autoloads. Those autoload permits to avoid to use a long list of require at the beginning of programs * Src/port.c (do_autoload): Adding support for autoload in C. Now, any kind of symbol can be autoloaded. Thu Sep 15 16:36:01 1994 Erick Gallesio (eg@kaolin.unice.fr) * 2.1.3 Release Wed Sep 14 18:52:14 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/stklos.c (make_instance): GC bug correction in a critical section of code. * Src/macros.c (lmacro): GC bug correction in a critical section of code. * Src/symbol.c (intern): modification of a critical section of code a GC could occur between the hash table entry creation and the end of its initialization. Correction of the same kind of problem in keyword.c. Bug discovered by Rob Deline. * Src/stklos.c (modify_instance): Bug correction (change-class make a twist between old and new instance) ==> following GC free the bad instance data !! Fri Sep 9 13:40:12 1994 Erick Gallesio (eg@kaolin.unice.fr) * Packing of the STk2.1.2 release Thu Sep 8 09:27:16 1994 Erick Gallesio (eg@kaolin.unice.fr) * STklos/stklos.c: Definition of a slot_set_if_unbound which only affect a slot if needed. This function is used in the slots initialization process. Now, things are corrects when a slot :initform is overloaded by inheritance or when initialization is done in an initialize followed by a next-method (i.e. it's the user value which is taken instead of the default one). * Src/gc.h: re-integretate gc_protect (can be useful for extension writers) * After 3 days continuations are tail recursive..... I thought I will become crazy before I found the little typing mistake (a lsubr instaed of a tsubr in primitives.c) which makes things weird. Mon Sep 5 18:37:16 1994 Erick Gallesio (eg@kaolin.unice.fr) * Symbols and keywords use now Tcl Hash table (which grow dynamically). Keywords share now memory. This reduces drastically space occupation. (Old symbol table uses conses, and keywords where not shared). Unused symbols can be GCed now. * Change class bug correction (Thanks to Rob Deline). Fri Sep 2 11:41:04 1994 Erick Gallesio (eg@kaolin.unice.fr) * -image can be specified needs not anymore to be the first argument of the command line. * Src/argv.c: "-cells" can be specified when calling stk. This give the amount of cells created upon init. Wed Aug 31 14:17:44 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/argv.h (save_unix_args_and_environment): moved to argv.c. This new file contains all the argc/argv/env stuff. STk doesn't rely anymore on Tk code for parsing command line arguments. This permits to have a arguments processing even if not compiled with -DUSE_TK. Tue Aug 30 13:39:53 1994 Erick Gallesio (eg@kaolin.unice.fr) * Tk/tkArgv.c (Tk_ParseArgv): * Src/gc.c (init_gc): GC complete revision: Now we have a set of heaps and a new heap is allocated as soon as the global space is "nearly" filled (I have fixed nearly to 75%). User can maually grow the heap by using extend-heap. There are time statitics now indicating how much time is spent in GC. Mon Aug 29 12:35:05 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/cont.c (throw): bug correction in continuations. Specifically, the gc_mark phase for the continuation blocks may fail because the stack starting and ending addresses used in the code are both (char *), not (SCM *), aligned, and the stack is copied in bytes, not in SCMs. on char * rather than SCM. This bug was discoverred by Felix Wu (wu@cadence.com) * Adding SLIB support (i.e. I have written the STk.init file). Some modifications in stk.init were needed (accepting the ".scm" suffix mainly) * Src/macros.c (expand): Cleanup in macros. We have now macro-expand and macro-expand-1 Thu Aug 25 15:59:33 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/number.c (do_integer_division): bug correction for modulo. The fix is due to kerch@parc.xerox.com. Wed Aug 24 12:02:41 1994 Erick Gallesio (eg@kaolin.unice.fr) * Src/number.c (integerp): Bug correction. integer? must returns #t even if the value is an inexact integer. * port.c: - modification to allow close-port on string-port - if the first char of a filename is a pipe ("|") character, usage of popen instead of fopen. This permits to define "pipe ports" very easily as in Tcl. * Integration of the Suresh Srinivas STk-wtour demo to the Contrib. Some minor bugs have been fixed and some new lessons have been added. Hierarchy was modified to fit to the contrib directory. Tue Aug 23 17:16:34 1994 Erick Gallesio (eg@kaolin.unice.fr) * Definition of a file compatibility file which assume compatibily among versions. When this file is loaded, a message will be printed, saying that you have to upgrade your source. * Adding support for Text in STklos Definition of a new version of the STF format (0.2) which permits to load and save files with their enhancment (font, color, ...). Now, tags can be dynamically created (instead of choosen in a fixed list). A compatibility mode is provided (see above)