-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathChangeLog
2609 lines (2159 loc) · 131 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
==============================================================================
Entry format is
MM/DD/YY (category) description (culprit's initials) [files changed]
==============================================================================
<<lots of changes from prcs history need to be logged here>>
Fixed weird behavior where repl would accept a malformed expression but
not add it to the history, and would copy the suffix of the expression
(after the error position) to the new input line, which is almost never
what you want. Instead, we reject malformed expressions and try to
position the cursor at the point of the error.
Repl now allows you to type #!eof to exit.
--- 1.3 ---------------------------------------------------------------
06/20/11 now setting mini-buffer disabled background color to blue so
that the text stands out better.
06/20/11 rewrote install-graphical-source-handler using the new (as of
Version 8.3.1) source-object/annotation support and new (as of
Version 8.0 or so) exception system, so we get back the yellow
highlighting of lexical and syntax errors.
--- 1.2 ---------------------------------------------------------------
02/21/11 fixed call to internal $read procedure, which now takes an extra
argument to specify whether annotations should be produced
02/20/11 as with C flags, link flags for intel macos now include
-mmacosx-version-min=10.4
12/02/10 makerpm now places rpms in RPMDIR, disables creation of debug rpm
11/23/10 removed manifest creation from src/swl/Makefile.vc, supposedly
no longer needed for VC 2010
11/22/10 updated foreign.c to fix printf warnings reported by i3osx build
11/22/10 updated configure.ss to add i3nb support, update i3fb, i3ob,
and i3osx configurations for moved include and lib files and
changes in C compiler options
11/17/10 added SCHEMEHEAPDIRS to generated swl script, if defined at make time
11/17/10 removed useless makeall script
--- 1.1 ---------------------------------------------------------------
03/19/10 modified pkg/Makefile, pkg/makepkg to allow Scheme version to
be specified on the command line
(RKD)
03/19/10 added opensolaris support
(RKD)
03/19/10 numerous changes to support Chez Scheme Version 8
- error-handler => guard or with-exception-handler
- error => assertion-violationf or errorf, warning => warningf
- \#primitive = $primitive
- (get-char x) => send x get-char to avoid conflict with r6rs get-char
- (raise x) => send x raise to avoid conflict with r6rs raise
- changed various foreign procedures to take bytevectors rather
than strings.
- reabstracted the C fallback queue operations.
- added missing initialization of sigaction in SWL_TclInit
- rewrote source-error marking code in repl-text.ss
- discarded some code attempting to make configure.ss compatible
with older versions of Chez Scheme upon which swl doesn't run
- now using make-boot-file
- using display-condition rather than our own error formatting
- ripped some dead code out of threads.ss
- quoted previously unquoted constant vectors
- now using get-registry rather than internal C routine
(RKD/OW)
03/19/10 using dynamic-wind to make sure repl-port-read-mode is reset
to #f if an error occurs reading from repl-port in repl-read
(RKD/OW)
--- 1.0d ---------------------------------------------------------------
05/31/09 added -mmacosx-version-min=10.4 to i3osx, ppcosx CFLAGS in
configure.ss so builds even on 10.5 are compatible with 10.4.
05/23/09 added call to Tcl_Finalize before exiting to prevent exit() from
hanging under Windows. The finalize is apparently needed if
any socket operations are done, even if they fail to open a
connection. (RKD)
05/21/09 various updates to change over to msvcr90.dll for both tcl/tk
(now using tcl/tk 8.5.7) which had been (for 8.3.2) using
msvcr71.dll and for swl.dll, which had been using the static
C library. now also including manifests in tcl/tk/swl dlls.
(RKD)
12/30/07 updated Makefile so that 'make install' should work for Petite
Chez Scheme installations as long as lib/$m files are present
(RKD)
12/30/07 several tweaks to makepkg and swl source to make swl open source
files double-clicked or dragged onto swl icon for MacOS X. added
some text for fixing up filename associations under MacOS X to
help.html
(RKD)
12/19/07 modified thread break handler to accept 'r' as well as 'q' to
quit and reset, for compatibility with non-SWL Chez Scheme
(RKD)
09/11/07 repl's waiter-prompt-and-read no longer displays even a space if
waiter-prompt-string is empty, as with Chez Scheme's default
prompt-and-read
09/10/07 ^J now behaves like ^<enter> in repl, i.e., "accepts" current
entry even if cursor isn't at the end of the entry.
04/09/07 eliminated delete-file calls from configure.ss in favor of
open-output-file 'replace flag
04/23/07 added imports for swl modules profview depends upon to profview.ss
06/11/07 added support for OpenBSD (i3ob machine type)
(RKD)
--- 1.0c ---------------------------------------------------------------
02/21/07 taught locate-parse-error about vfxparen and vfxnparen
(RKD)
--- 1.0b ---------------------------------------------------------------
01/08/06 added -m32 to i3le LDFLAGS in configure.ss since build actually
uses gcc rather than ld
(RKD)
12/02/06 added new cs.icns file and reverted to old makepkg with a couple
of tweaks so that icon is actually displayed.
(RKD)
11/30/06 added i3osx support
(RKD)
--- 1.0a ---------------------------------------------------------------
08/02/06 changed ppcosx InstallPrefix in configure.ss to /usr
(RKD)
07/30/06 added build instructions to ./README.
(RKD)
07/28/06 eliminated iu-specific cfs preferences settings
(RKD)
03/05/06 made InstallPrefix, InstallOwner, and InstallGroup settings per
machine-type in configure.ss; moved remaining installation
settings from Makefile to Mf-install
(RKD)
03/05/06 added support for FreeBSD (i3fb machine type)
(RKD)
03/10/06 changed i3nt swlprefs-directory to (a) consult at SWL_PREFS_DIR
environment variable and (b) use APPDATA variable if our
SwlPrefsDir registry key is not set. Changed (Petite) Chez Scheme
installer to not set SwlPrefsDir, so in usual case, we look for
.swlprefs in "%APPDATA%\\Scheme Widget Library\.swlprefs".
use of APPDATA suggested by Corey Hildebrandt (mrhelper@nycap.rr.com)
who reported problems with our setting of SwlPrefsDir under
Windows Vista.
(RKD)
02/06/06 fixed module problem noted on 08/31/05 by inserting a with-implicit
for the introduced module names in define-swl-class (syntax.ss).
backed out the imports added on 08/31/05.
(RKD)
02/06/06 minor mods to oop.ss tutorial so that it will load, even if it
doesn't actually do anything.
(RKD)
02/06/06 fixed numerous swl reference manual problems including:
missing documentation and missing or differing "returns"
for methods, missing labels, multiply defined labels for
methods with more than one arity (now distinguished in label
by interface and in output by interface in parens), listing of
supposedly "omitted" methods, incorrect preface text, missing
title/author/date in html version, missing <title>xxx</title>
in ref.html
(RKD)
--- 0.9z ---------------------------------------------------------------
08/31/05 added imports of all our modules to init.ss in gross hack to
work around bug with change in import semantics.
(RKD)
06/06/05 (changes for V6.9d) dropped define-syntax for datum; dropped
definition for define-pretty-form; changed to use pretty-format;
updated version to 0.9z.
(RKD)
--- 0.9y ---------------------------------------------------------------
06/16/02 (bug fix) Now installing an abort-handler that checks whether
there are any editors with unsaved content (or editors with
registered interested parties). Also fixed several bugs in the
code written earlier today while migrating swl:make-application to
swl:begin-application:
- fixed race condition in access to the app-q and token-q that
could allow messages to cross.
- now forcing the application's fallback queue thread to exit
only when we process a swl:exit-application message specific
to that application (earlier we were killing the fallback
thread when the exit-notify proc was run even if that didn't
mean that the application was removed (ie. an editor may have
had unsaved content) so clicking Exit SWL with an editor that
had modifications would leave that editor without a fallback
queue, effectively preventing the user from saving the content
of that editor since it couldn't invoke menu callbacks.
(OW) [src/swl/init.ss]
06/16/02 (bug fix) We now stripping the cp1in inline handlers from the
system primitives redefined by threads.ss. This should prevent
any nasty surprises where we happen to inline a version of
read-char or current-input-port that's going directly to the
Chez Scheme thread context structure instead of the SWL thread
parameter that replaced c-i-p. (If we rewrite SWL someday we'll
also rewrite the thread system and use the native thread context
structures then.)
(OW) [src/threads/threads.ss]
06/16/02 (bug fix) Caught a few more key system procedures that manipulate the
current-input-port / current-output-port that were missed in the
6/11/02 workaround pass: with-input-from-file, with-output-to-file,
clear-output-port, char-ready?
(OW) [src/threads/threads.ss]
06/16/02 (bug fix) Fixed memory leak where swl:make-application created
fallback queues (and threads) that were locked down and never
unlocked. In the process, moved functionality of swl:make-application
into swl:begin-application. The protocol is now that we call
swl:begin-application with a start continuation that will receive
an application token that can be passed to swl:end-application to
run the exit-notify procedure registered by swl:begin-application.
(The exit notify procedure is returned by the start continuation.)
A rather hairy mess due to twisted dependencies, but it should keep
us safe even now that we're likely to be forking more editors and
repls.
(OW) [src/swl/teventloop.ss, src/swl/init.ss, apps/common/app.ss,
apps/automata/tm.ss, apps/lecture/lecture.ss,
apps/htmlview/htmlview.ss, apps/graph/graph.ss,
apps/repl/repl.ss, apps/edit/edit.ss, src/swl/menu.ss,
src/swl/teventloop.ss]
06/14/02 (bug fix) Clarified the labels on the buttons in the dialog box
that pops up when you try to close an editor that has changes.
Now give choice between "Discard changes" and "Keep editing"
instead of "yes" "no" "cancel".
(OW) [apps/edit/edit.ss]
06/14/02 (bug fix) swl:end-application now invokes the exit thunk specified
in the call to swl:begin-application, as previously documented, but
apparently not implemented. We had been using this in the editor to
remove the current editor from the global list of editors.
(OW) [src/swl/init.ss]
06/11/02 (bug fix) Each new repl now starts with just one > in its prompt.
Starting a new-cafe in one repl no longer affects the prompt of
new-cafes in other repls, nor does it affect prompt level of new
repls.
(OW) [src/threads/threads.ss, apps/repl/repl-text.ss]
06/11/02 (workaround) Finally decided to simply redefine the various I/O
primitives that use current-input-port or current-output-port as
their default port. These now make an explicit call to the actual
(redefined) parameters so that we:
1. no longer reset these parameters on each context switch, and
2. don't get bitten by the fact that we don't have actual Chez
Scheme thread structures representing our threads and their
parameters. Perhaps if we were able to pull this off, we'd
get the current port parameters working as desired.
Note that the rest of the system probably relies on the current
thread/group parameter semantics, so I'm not eager to mess with
option 2 until everything else is in order.
(OW) [src/threads/threads.ss]
<< Note: changes made during development are logged separately in the PRCS
project swl.prj >>
06/09/02 (new feature) Added code for saving and restoring preferences.
The load-prefs method fetches preferences from the global store
(or from disk) and marks the widget as the preferences root for
its children. The save-prefs! method stores preferences to disk.
The get-pref and set-pref! methods manipulate preferences for a
particular widget by delegating up the widget containment links
until it finds the widget that loaded the preferences.
Cascade and Radio menu items support automatic update of preferences
when their prefs-key: option (ie. set-prefs-key!) is set. Before
calling the set-selected! method on a menu items that has a prefs-key
set, a parent widget must have invoked load-prefs.
** incompatible change ** calling the get-parent method of a
<toplevel> widget is no longer an error. It simply returns #f.
(OW) [src/swl/base1.ss, src/swl/preference.ss, src/swl/menu.ss,
src/swl/make.ss, apps/repl/repl.ss, apps/edit/edit.ss,
src/swl/frame.ss]
06/07/02 (bug fix) The invoke and get-action methods of command-menu-items
were broken if no action had been set. Also, when we switched long
ago to letting Tcl code handle menu bindings, we let menu events
invoke "set-action!" callbacks directly. Now user-interface menu
events call the "invoke" method on the menu item. Moved the prop-ref
and prop-set! protected methods into <tk-object> class where they
can be shared by the menu code and the widget code.
(OW) [src/swl/menu.ss, src/swl/base1.ss]
06/07/02 (build changes) Eliminated separate make of oop.boot. Modified
make.ss so that it compares file modification times to determine
whether a file needs to be compiled or just visited. This speeds
up build times when we're only modifying the editor or repl.
(OW) [src/swl/make.ss]
06/06/02 (bug fix) The get-actual-values method of <font> objects now returns
the font family as a symbol so that we can use these results directly
to create a new <font> instance.
(OW) [src/swl/option.ss]
06/06/02 (bug fix) Fixed many places where thread system was printing or
reading from current output/input ports when it should have been
working with the console ports.
(OW) [src/threads/threads.ss]
06/05/02 (cop out) Unable to determine why system goes spastic if we let
a click dismiss the splash screen window, I finally decided to just
reduce the amount of time it's on the screen. It used to be that we
could get strange text-highlighting and menu-posting bugs if we clicked
to dismiss the splash screen and then moved the mouse over some other
SWL window. It was very annoying in lecture because it often posted
some silly menu.
(OW) [src/swl/teventloop.ss]
06/05/02 (sigh) swl:api-procedure needs to take the install method (define or
set!) so that it knows how to install the procedure and can play nice
with modules or without them.
(OW) [src/swl/base2.ss, src/swl/dialog.ss,
src/swl/documentation.ss, src/swl/foreign.ss,
src/swl/option.ss, src/swl/proto.ss, src/swl/selection.ss,
src/swl/syntax.ss, src/swl/teventloop.ss]
06/05/02 (bug fix) Fix get-title method for menu items whose titles contain
underscore characters, e.g. "_File" or "Ed_it". Fix several bugs in
the menu tutorial.
(OW) [src/swl/menu.ss, tutorial/menu.ss]
06/04/02 (cleanup + incompatible change) Use reader syntax to avoid going
into system mode. Changed staging of define-generic so that
the old namespace cleanup hack works again. Moved SWL generics
into swl:generics module so we don't even have to clean the
dang things up. Moved SWL macros into swl:macros module.
We now must use define-swl-class for anything we expect to
subclass or else we'll get errors complaining that variable
create is not bound (because it won't see the create macro).
We also have to import the various swl modules before we can
use them. Wrapped a module around the thread system.
*some of the sample applications still need to be brought up to
date with this change*
(OW) [src/swl/base2.ss, src/swl/syntax.ss, src/swl/generics.ss,
apps/automata/tm.ss, apps/common/app.ss,
apps/common/auto-class.ss, apps/common/flex-button.ss,
apps/common/flex-text.ss, apps/common/flex-toplvl.ss,
apps/common/fontmenu.ss, apps/common/help.ss,
apps/common/keyhelp.ss, apps/common/optionbox.ss,
apps/common/popup.ss, apps/common/scheme-text.ss,
apps/common/scrollframe-m.ss, apps/common/scrollframe.ss,
apps/common/selectbox.ss, apps/common/semaphore.ss,
apps/consbox/consbox.ss, apps/design/design.ss,
apps/design/dm.ss, apps/design/popup.ss, apps/design/vtool.ss,
apps/edit/edit-text.ss, apps/edit/edit.ss,
apps/fileview/fileview.ss, apps/fileview/view.ss,
apps/graph/graph.ss, apps/htmlview/html-text.ss,
apps/htmlview/htmlview.ss, apps/inspector/syntax.ss,
apps/lecture/lecture.ss, apps/netport/MRA.ss,
apps/netport/np.ss, apps/profview/profview.ss, apps/repl/repl.ss,
apps/vinterp/vinterp.ss, src/swl/proto.ss, src/swl/teventloop.ss,
tutorial/canvas.ss, src/threads/threads.ss]
05/20/02 (bug fix) Modified Control-k binding in <text> widgets so that the
insertion cursor doesn't creep up to the end of the previous line
when the user pressed Control-k while cursor is at the end of the
buffer.
(OW) [src/swl/proto.ss, src/swl/edit.ss]
05/17/02 (bug fix) Closing the console input/output ports is now a NOP in
the REPL just as it is in the usual console version of Chez Scheme.
(OW) [apps/repl/repl-text.ss]
--- 0.9v ---------------------------------------------------------------
08/09/01 (make) removed use of ln -sf, since Solaris's ln doesn't honor
the -f flag when creating symbolic links.
(RKD) [src/dc/Makefile]
08/09/01 (stex) fixed some bogus error messages with missing slash escapes,
caught by tighter restrictions on escape sequences in Chez Scheme
Version 6.7. modified disclean to clean stex stuff.
(RKD) [./Makefile, src/dc/html-prep.ss, src/dc/preplib.ss]
08/09/01 (documentation) Updated apps/README (actually resurrected version
dropped in the shuffle)
(RKD) [apps/README]
08/08/01 (installation) Kent's updated Wise install script.
(RKD) [wise/swl.wse]
06/14/01 (bug fix) Updated old object system implementation to compensate for
recent syntax-case changes affecting list structure in syntax output.
(OW) [src/oop/class.ss]
06/14/01 (bug fix) Updated the (Windows-only) replacement for open-input-file
to handle the recently added compression flags accepted by the native
open-input-file in recent versions of Chez Scheme.
(RKD/OW) [porthack.ss]
06/14/01 (installation) now install apps directory; now determine tcl/tk
version at make time; updated wise scripts; abandoned saved heaps
under Windows.
(RKD/OW) [Mf-install, Makefile, wise/swl.wse,
make.bat (new), Makefile.vc, tclversion.tcl,
configure.ss, bintar]
02/15/2000 (installation) Bob Burger contributed enhancements to the WISE
installation script used under Windows. Hopefully I've spliced his
updates in appropriately.
(OW) [wise/swl.wse]
02/15/2000 (bug fix) Bob Burger sent in a bug report and provided the fix!
The bug was that thread-fork periodically pruned its weak lists, but
only got pruned the lists of the top-level threads (not nested ones).
This lead to a memory leak of weak-pairs that could be seen by running
this program:
(begin
(thread-fork
(lambda ()
(let loop ()
(thread-fork void)
(thread-yield)
(loop))))
(void))
and watching the number of weak pairs reported by (\#show-allocation).
While applying the fix, I saw that swl:install-collect-request-handler was
was brazenly ignoring the existing collect-request-handler (so it was
missing the fix we made to threads.ss).
(OW) [threads.ss, base2.ss]
01/12/2000 (bug fix) Fixed annoying bug that left menu items highlighted
from time to time after mouse left menubar. The problem was that
tkMenuLeave could bug out (without deactivating highlighted item)
if the currently active menu item was a cascade. This only makes
sense if the cascade has a menu and that menu is mapped.
(OW) [lib/menu.tcl]
01/12/2000 (bug fix) Thanks to Bob Burger for pointing out that
thread-default-quantum contained an out of scope reference
to local variable thread-error. Bob also pointed out that
the assignments in the definition of panic didn't reset the
system values of the warning-handler and error-handler.
(RGB) [src/threads/threads.ss]
11/23/99 (bug fix, new feature) The screen->canvas-x and screen->canvas-y
methods now return a fixnum. (At some point Tk started returning
a float.) Fixed variable name typo in <canvas-item> raise and
lower methods. The set-selected! method of <radio-menu-item>s
and <check-menu-item>s should now do something useful when
passed #f. The <bitmap> and <photo> classes should now support
set-filename! and get-filename methods.
(OW) [canvas.ss, canvasitem.ss, menu.ss, image.ss]
06/01/99 (installation bugs) eliminated references to ~dyb, added n32sgi
case, and added some unquotes in pax case in configure.ss
(RKD) [configure.ss]
04/02/99 (installation) Fixed unbound variable in swlconfig.ss generated
by bintar; joined in one line single-quoted text that was
split across multiple lines confusing Sun's make, in Makefile
generated by bintar.
(RKD) [bintar]
04/02/99 (installation, bug fix) Changed installation process slightly
to support creation of linux RPMS and added set-font! call to
force fixed font in tutorial guide (these changes were
actually made before the last cvs commit)
(RKD) [configure.ss, Makefile, Mf-install, tutorial/guide.ss]
03/25/99 (bug refix) Forgot to change <edit-text> class for Alt+g change.
(RKD) [edit-text.ss]
03/25/99 (bug fix) Rebound the editor's "save and execute" to Alt+g, since
Alt+e was already automatically bound to bring up the edit menu.
(RKD/OW) [edit.ss, edit.html]
--- 0.9u ---------------------------------------------------------------
03/23/99 (installation) Created a bintar script and fixed Mf-install
to install swl.so or swl.sl as appropriate.
(RKD) [Mf-install, swlbintar (new)]
03/16/99 (installation) Minor changes to wise script per Bob Burger's
suggestions: set to build 32 bit .exe, added "press okay to begin
heap-building process" to build dialog.
(RKD) [swl.wse]
03/16/99 (installation, documentation) Added make install target. Updated
about html file and manual preface.
(RKD) [./Makefile, Mf-install (new), README.INSTALL,
about.html, preface.stex]
03/14/99 (bug fixes, installation) Fixed backspace to delete selected
text in scheme-text. Changed _Open to Open in editor's file
open dialog box title, Fixed delete to work at the start of
a line in repl. Fixed tab to not switch between windows in
addition to it's normal function when overridden by a key
press method. Various changes to wise installation script.
(RKD) [scheme-text.ss, edit.ss, repl-text.ss, init.ss, swl.wse]
03/13/99 (bug fix, installation) Updated wise installation script/process
again to make consistent with Chez Scheme installation. Fixed
swl:write-file-from-widget to replace and then close output file.
(RKD) [swl.wse, swl.lic, index.html, auxio.ss, swl.bat [flushed)]
03/09/99 (Todo update) Updated todo slightly.
(RKD) [Todo]
03/09/99 (cleanup, minor changes, installation) Updated wise installation
script. Added about.html linked from Help menu. Added license
for use with wise script. Updated copyright date to 1998.
Disabled templates menu from repl and editor. Added warning on
first use of time about thread system overhead. Inserted what
should be okay pointers to csug and tspl, under installation
assumptions made by wise script. Modified repl to properly
identify Petite Chez Scheme. Updated dc Makefile to add faq.tex
to set of tex source files.
(RKD) [Notice, edit.ss, repl-text.ss, repl.ss, index.html,
teventloop.ss, wise/swl.lic, wise/swl.wse, about.html (new),
wip.html (flushed), src/dc/Makefile]
03/05/99 (installation, cleanup) Added wise subdirectory with start on
wise installation script. Removed abxstart resource file
(heavy-handed way to eliminate explicit icon binding).
(RKD) [wise (new), abxstart/rc (flushed), abxstart/Makefile.vc]
03/05/99 (bug fix) Fixed scheme-prep handling of _{stuff} in \var forms
(RKD) [src/dc/stex/scheme-prep.ss]
03/02/99 (bug fix) No longer installing pretty-printer pattern for the
symbol `bind'. The bind macro was eliminated long ago, and this
define-pretty-form should have gone with it.
(OW) [src/swl/syntax.ss]
02/23/99 (bug fix, minor changes) Added explicit setting of font to
fixed (courier) font in edit and repl apps, since some window
managers don't give us fixed fonts by default, including KDE
and Windows. Picked 12pt, although 12pt won't be right in all
situations. (We really need to allow preferences to be saved.)
Made font dialog transient wrt <toplevel> so that it doesn't
jump under repl/edit window under Windows. Shortened time
before splash screen appears to 1/4 second from 1 second.
Updated the TODO list.
(RKD) [apps/repl/repl.ss,apps/edit/edit.ss,src/swl/dialog.ss,
src/swl/teventloop.ss,Todo]
02/16/99 (adding files) Added abxstart/rc directory and contents.
(RKD) [abxstart/rc (new directory)]
02/16/99 (bux fix, build changes) Eliminated inclusion of config.scheme in
boot file and changed definition of swl:version in Makefile.vc to
assignment (as in Makefile) so that only swl:version is defined at
run time (fixes bug with (import scheme), since scheme is defined
in config.scheme).
(RKD) [Makefile.vc, src/swl/make.ss]
02/15/99 (new feature, cleanup) Added abxstart directory/program from
Wally @ Abstrax. This program can be used to start up SWL under
Windows with the console window hidden. Added build of abxstart
under NT. Made changes to support "make clean" and
"make reallyclean" under Windows. Also added path line to
generated swl.bat to add dir containing Tcl/tk DLLs.
(RKD) [abxstart (new directory), Makefile.vc, Mf-cleanlib.vc (new),
configure.ss, src/swl/Makefile.vc, README.INSTALL]
02/13/99 (clean up) Changed "``File''" and "Font..." on inspectview to
"File" and "Font". Taught profview about $profile-dump and added
a brief comment on usage to top of proview.ss. changed "System
Manual" to "User's Guide" in documentation index.
(RKD) [apps/inspector/top.ss, apps/profview/profview.ss,lib/index.html]
02/12/99 (clean up) Updated top-level README files README and README.INSTALL.
README.NT is now gone. Also made animal.ss NT-friendly
in where it finds a temp directory into which to store its database
and made it start up upon load like the other tutorials.
(RKD) [README,README.INSTALL,README.NT (flushed),tutorial/animal.ss]
02/12/99 (cvs fix) Removed obsolete src/swl/{paxcc,foreign-tk42.c}.
(OW) [src/swl/paxcc, src/swl/foreign-tk42.c]
02/12/99 (build changes) Fixed configure script for i3nt to produce
progra~1 in place of Program Files so as not to confuse linker.
(RKD) [configure.ss]
02/12/99 (simplification) Minor simplification to how SWL decides if it's
running under Petite Chez Scheme (look at system value of
\#compiler-is-loaded?). also altered appearance of splash screen
slightly.
(RKD) [src/swl/teventloop.ss]
02/12/99 (build changes) TCL version and library information is now
set only in configure.ss, i.e., no longer in Makefile as well.
most people should now have to modify only configure.ss, if
anything. generating shared libraries is now separated into
two distinct steps: running CC on the source files followed
by LD on the object files. we must now set LD and LDFLAGS
in configure.ss for each machine type. In many cases, LD
can be the same as CC. Makefile.vc still needs to be updated.
also reinserted the file win32.c and the foreign procedure
declaration of swl:open-dde-file in foreign.ss, neither of
which had been added properly.
(RKD) [Makefile,Makefile.vc,configure.ss,
src/swl/Makefile,src/swl/Makefile.vc,
src/swl/paxcc (flushed),
src/swl/win32.c (added again),
src/swl/foreign.ss]
02/11/99 (bug fix) Removed a few recently fixed items from the Todo list.
Fixed keyboard menu posting and updated both documentation and
tutorial. Fixed documentation macros so that menu documentation will
be included in the SWL reference (ie. all the various menu items).
Used the underline mechanism for keyboard posting of menus in html
viewer as well.
(OW) [Todo, apps/htmlview/htmlview.ss, src/swl/base2.ss,
src/swl/documentation.ss, src/swl/menu.ss,
src/swl/syntax.ss, tutorial/menu.ss]
02/11/99 (bug fix) Now sourcing my patched menu.tcl to fix host of bugs in
Tk's menu support under unix. May still be a few things to work out.
Updated the menus of REPL and Editor to underline certain characters
so these items can be selected easily via keyboard. For some reason,
SWL is interfering w/ Tk's automatic support for these accelerators
on the menubar (toplevel's menu), though they work fine once a menu
is posted. Trying to set bindtags on toplevel's to see if that
fixes the problem. Added a "Load + (cd)..." item to REPL's menu so
we can load a file and change to the directory where the file lives.
Added quick-and-dirty swl:with-library-file to alter user to errors
locating library files (uses ugly default Tk dialogs under unix,
but probably uses something prettier under Windows). Added quick
description of the some Tk menu problems I fixed/noticed.
(OW) [ChangeLog, description, edit.ss, frame.ss, init.ss,
menu.tcl, repl.ss, teventloop.ss]
02/10/99 (bug fix) Fixed bug introduced on 02/09/99 in handling of
swl:application-menu items. Failing to fork a new application
around the call to new-repl had the effect that REPLs forked from
the application menu could easily get their begin-exp mark out of
sync. This manifested as an emacs-looking bug where you hit return
and it's reading the previous expression, or the > prompt, or the
error message you just got. While testing other things, noticed
that ill-behaved callbacks can hang up the system. This means the
separate fallback queues are not getting used somehow, which suggests
another problem with thread-paramter grouping. (I'm sure this used to
work back when I first added separte fallback queues.)
(OW) [src/swl/teventloop.ss]
02/10/99 (bug fix) Fixed long-standing SWL bug where command-line load
of file that raises error during load command line caused a thread
system panic. Had violated thread system assumption that all eval
was done w/in a new-cafe. Need to verify that my tricks restored
the correct waiter-prompt-and-read.
(OW) [src/swl/teventloop.ss]
02/10/99 (new feature) Added a "Load..." item to the REPL's "File" menu.
(OW) [apps/repl/repl.ss]
02/09/99 (work in progress)
With stock Tk8.0.4 on unix, we can't invoke a non-cascade menu item
of a toplevel's menubar. I have a patch for this started in lib/menu.tcl.
There is currently tons of debugging output in there so I can figure
out what it's doing. Added test code holding area in ./test
(OW) [lib/menu.tcl, test/Tk/tkbug, test/htmlview/BUG,
test/htmlview/bad-inspect.html]
02/09/99 (bug fix) Fixed a few typos that seem to have been introduced in
the process of merging Kent's changes in. URl-type -> URL-type.
URL-string -> URL->string. Not sure how these got in there, but
it does make me wonder about cosmic rays. Changed <menubutton>
to <option-button>, but haven't been able to test the code yet.
(OW) [apps/netport/html.ss, apps/netport/np.ss]
02/09/99 (updated code) Updated the applications and tutorials to cope with
the change to Tk's native menu code. Unfortunately Tk's menu code is
broken in different ways on unix and Windows, so I've developed a
patched version of tk8.0.4/library/menu.tcl that we can distribute
with SWL (and load upon startup). Couldn't resist tweaking the TM
simulator a little (not extensively tested). Changed REPL to use
Alt+q to exit for consistency w/ Editor. Removed 'white background
setting on the REPL's output markup because it caused cut and paste
selection to look very strange. REPL was using a canvas to do the
traffic light, but this isn't supported in a menubar, so now using
precomputed static images. Added notes in the Todo list.
Trashed Johnz's cute worrier image since Windows menu display code is
so broken (maybe Wally will fix their menu code).
Using <option-button> for the file tab in visual interpreter.
(OW) [apps/automata/tm.ss, apps/common/fontmenu.ss,
apps/common/worrier.ss, apps/design/design.ss,
apps/htmlview/htmlview.ss, apps/inspector/top.ss,
apps/inspector/widgets.ss, apps/lecture/lecture.ss,
apps/netport/np.ss, apps/repl/repl.ss, apps/repl/repl.ss,
apps/vinterp/vinterp.ss, src/swl/documentation.ss,
lib/redlight.gif, lib/repl.html, lib/grnlight.gif,
tutorial/guide.ss, Todo]
02/09/99 (new feature) Removed swl:register-application. That functionality
is now provided by swl:application-menu (defined using case-lambda).
Added a similar facility, swl:help-menu, for help menus. The old
code was actually consing up a fresh list of applications each time
a menubutton was pressed. The new code updates all relevant menus
when a new application is registered.
(OW) [teventloop.ss]
02/09/99 (bug fix) When destroying an editor with unsaved contents, we now
deiconify it and raise it to the top of the stacking order so that
the user can tell what buffers contents are not saved. Now setting
the title of the editor to reflect the current filename also in the
case where it is invoked as (new-edit <filename>). The dialog warning
about unsaved buffers now prints the filename if known.
Fixed bug in show method of <toplevel> where I forgot that the window
manager doesn't have to invoke my hide method (hence internal state
was out of sync, solved by using tcl-eval 'winfo 'ismapped).
Using swl:sync-display to ensure get-width / get-height do something
useful when we want to center the warning dialog over a window.
(OW) [apps/edit/edit.ss, src/swl/frame.ss]
02/09/99 (bug fix) No need to include porthack.ss unless we're building
on Windows. Avoided using this under unix.
(OW) [src/swl/porthack.ss]
02/09/99 (bug fix) Changed the implementation of swl:console-error-port so
that it doesn't create the toplevel display window until it has to.
(OW) [src/swl/init.ss]
02/09/99 (bug fix) Renamed sync-display to swl:sync-display and made it invoke
Tk's "update idletasks" command. This is needed, for example, in cases
where we want to get the width of a widget but need to flush it to the
display first.
(OW) [apps/common/popup.ss, apps/common/scrollframe-m.ss,
apps/common/warning-dialog.ss, apps/design/popup.ss,
apps/inspector/top.ss, apps/netport/np.ss,
apps/repl/repl.ss, src/swl/base2.ss, src/swl/frame.ss,
src/swl/init.ss, src/swl/teventloop.ss]
02/07/99 (bug fix) It should now be possible to have menu items with both
title (image or string) and accelerator (a string).
Added note in todo list about the need to trash the raw-check code
for menus. Also fixed bug in <option-menu> --- set-title! now sets
the value of the Tk variable controlling the selected status of the
radio button menu items. Also "fixed" bug due to circular dependency
that broke because classes are macros (added isa-option-button?).
(OW) [menu.ss, dialog.ss, Todo]
02/07/99 (incompatible change) Moving to Tk's native menu support because SWL
menus are now broken running on Windows under Tk 8.0.4 (used to work
with Tcl/Tk 7.6/4.2). Removed the <menubutton> class. Added a menu:
create option to the <toplevel> class. Added an <option-button> class
for use by swl:font-dialog. Updated swl:font-dialog to use the new
class --- this cleaned up the code somewhat. Documentation is lacking
for the new class. Next, need to work through tons of SWL app code to
eliminate use of <menubutton>. Updated comments in Todo and base2.ss.
Added definition of with-values to syntax.ss.
(OW) [Todo, base2.ss, button.ss, dialog.ss, documentation.ss,
frame.ss, menu.ss, syntax.ss, tutorial/menu.ss]
Notes (need better place to log these)
* oops, intended to commit this on a CVS branch, but hit the trunk.
* verified that this change was worth it:
- menubutton's don't work as expected under Windows
- menubar works well under Windows except that checkbutton
and radiobutton menu entries do not correctly display their
indicators (yes, -indicatoron is 1)
- unix menubar code is broken, but it looks like I have hope
of fixing it:
- command / checkbutton / radiobutton menubar entries
cannot be invoked either via mouse or keyboard traversal
(fixed this one easily in library/menu.tcl)
- checkbutton / radiobutton menubar entries draw oversized
indicator (no hope to fix this at the script level, but
since it doesn't seem portable to Windows, no great loss)
- following sequence assumes menubar containing cascade
item labelled Edit and command item labelled BUG:
1) click on Edit
2) use arrow keys to activate BUG
3) hit spacebar to invoke
==> Edit menu is unposted,
but BUG's command not invoked
4) without moving mouse (ie. still over Edit), click
mouse buttons
==> Edit menu will not post until mouse is
moved (activating the item)
[best to test this w/ a trackpad because
it separates buttons from motion]
(working on a fix)
02/07/99 (minor reorg) Moved two void definitions from frame.ss to init.ss.
Added some notes to the Todo list.
(OW) [frame.ss, init.ss, Todo]
02/06/99 (bug fix) Had forgotten about #!bwp in the follower code. Fixed.
(OW) [frame.ss, Todo]
--- 0.9t ---------------------------------------------------------------------
02/05/99 (updates) Added more to the Todo list. Changed references to
Tcl/Tk 7.6/4.2 to 8.0 in README.NT. Slightly modified the ghastly
splash screen and reduced the delay before removing the window.
Started a FAQ in faq.stex. Updated ChangeLog with tons of changes.
(OW) [Todo, README.NT, teventloop.ss, splash.gif, faq.stex,
ChangeLog]
02/05/99 (new features)
Added a new swl:font-dialog procedure to replace the old font-menu
code. Added hooks (add-follower, remove-follower, on-destroy)
to <toplevel> class so that an open font dialog can be removed
when the underlying application is closed (need this because the
dialog is not modal). Added a new style option for <menubutton>s
that affects their display and the posting of their menus.
Added swl:font-families procedure to list the available font families.
Used this in the font dialog code.
(OW) [dialog.ss (added), frame.ss, button.ss, make.ss, option.ss,
src/swl/Makefile, src/swl/Makefile.vc]
02/05/99 (incompatible change) Moved to Tcl/Tk 8.0.4 and replaced old <font>
class with hopefully more portable code (see documentation for <font>).
The make-font macro has been changed and is now used only to override
specific values of a given font.
Removed the font-menu code from apps/common/fontmenu.ss (via #!eof).
Updated applications and tutorials to comply with the new font code.
Removed some tabs from edit.ss.
Removed foreign-tk42.c.
Made swl:file-dialog sensitive to (current-directory).
(OW) [apps/inspector/hooks.ss, apps/inspector/inspector.ss,
apps/inspector/top.ss, automata.ss, design.ss,
edit-text.ss, edit.ss, fileview.ss, fontmenu.ss,
fontmenu.ss, foreign-tk42.c, foreign.ss, frame.ss,
generics.ss, html-text.ss, lecture.ss, np.ss, option.ss,
repl.ss, syntax.ss, tutorial/animal.ss, tutorial/label.ss,
view.ss, warning-dialog.ss]
02/05/99 (bug fix) Editor now backs up existing file when doing
"Save As". (new-edit <path>) now records <path> as the
current path (so that Save actually works). Converted
editor's unsightly help menu into an unsightly html file.
Fixed html typos in repl.html.
Converted visual inspector's help menu to an html file.
(OW) [edit.ss, edit.html (added), repl.html, inspect.html]
02/05/99 (name change) Renamed screen-width and screen-height to
swl:screen-width and swl:screen-height. Updated other code
to reflect the change.
(OW) [base2.ss, frame.ss, teventloop.ss]
02/05/99 (bug fix) Fixed bugs in url-history list of html viewer for
documents without titles. Changed the representation of cache keys.
(OW) [htmlview.ss, html-text.ss]
02/02/99 (build changes) updated various make/configuration files to
support building of a boot file containing the base code in
src/swl plus the edit, htmlview, and repl apps. updated make
files for tk8. updated Windows make files.
(RKD) [Makefile,Makefile.vc,configure.ss,src/oop/Makefile.vc,
src/swl/Makefile,src/swl/Makefile.vc,src/swl/make.ss]
02/02/99 (bug fix) prune-broken-weak-pointers! no longer assumes that
the list won't be empty. Reported by Bob Burger.
(RKD) [src/threads/threads.ss]
02/02/99 (enhancement?) added support for bringing up the user's default
browser for SWL/Scheme documentation, in place of htmlview, under
Windows, until htmlview grows up. Used code from Wally to
find and invoke browser.
(RKD) [src/swl/foreign.c,src/swl/win32.c (new), src/swl/foreign.ss,
teventloop.ss,apps/htmlview/htmlview.ss]
02/02/99 (bug fix) removed misguided conversion of delete to backspace.
(RKD) [src/swl/event.ss]
02/02/99 (enhancement) added execute button to editor. to get reasonable
source information, execute first saves then loads.
(RKD) [apps/edit/edit.ss,apps/edit/edit-text.ss]
02/02/99 (bug fix) use SWL_TMP or TMP or TEMP env variable, and failing
that, ., in place of /tmp for gif loading in htmlview.
(not sure we shouldn't be using /tmp still under unix)
(RKD) [apps/htmlview/html-text.ss]
02/02/99 (bug fix) tried to improve url parsing under Windows. Still
needs work.
(RKD) [apps/htmlview/html.ss]
02/02/99 (enhancement?) eliminated faint yellow highlighting of repl
prompt/input. added check in file-position in repl port to
signal an error on attempts to reposition.
(RKD) [apps/repl/repl-text.ss]
01/31/99 (bug fix) Always close source output port (sout) when processing
a \schemeoutput[mode]{filename} directive. This fixes bug where
output wasn't showing up in subsequent append when original port
was left open:
\schemeoutput{file1}
% forgot to close file1
\schemeoutput{file2}
\schemeoutput{}
\schemeoutput[append]{file1}
% stuff here wasn't showing up in file1
\schemeoutput{}
(OW) [scheme-prep.ss]
01/30/99 (clean up) Merged other from home workarea: now withdrawing the
default Tk toplevel window (".") earlier in the initialization process
hoping to prevent it from popping up visibly. Now setting the console
error port to the initial swl:error-log-port so that background errors
in fallback threads don't splash on the tty console.
(OW) [init.ss, teventloop.ss]
01/30/99 (clean up) Merged changes from home workarea: generated build-script
now uses (let () ...) rather than (begin ...) so that the definitions
in the generated config.scheme are not global definitions.
(OW) [Makefile, configure.ss, src/swl/make.ss]
01/17/99 (bug fix) Now generating newline after the initial \schemelinestart
so that the following doesn't bomb with \schemelinestartFOO undefined:
\schemedisplay
FOO
\endschemedisplay
Also now support \raw{...} following a \schemedisplay (previously
supported only \label{...}.
(OW) [src/dc/stex/scheme-prep.ss]
01/08/99 (bug fix) Added missing '<' in definition of \item command within
the description environment used by the html backend.
(OW) [src/dc/stex/html-prep.tex]
11/09/98 (bug fix) Updated documentation compiler so that html backend
understands \"{<letter>} for umlauts and \c{<letter>} for those
French whips on letters.
(OW) [src/dc/stex/html-prep.ss]
11/03/98 (incompatible change)
Stripped out the module macro from syntax.ss. This ties us to
Chez Scheme version >= 6.0, although we could easily have moved
the macro definition into a compatibility file. The thought was
that we should (soon) consider ourselves free to use the full
module system and worry about compatibility later.
(OW) [syntax.ss]
10/29/98 (bug fix) Fixed call to error w/ incorrect number of args.
Brought visual interpreter up-to-date wrt. the Chez Scheme v6.0
source representation.
(OW) [option.ss, vinterp.ss]
10/27/98 (bug fix) Now catching file-position request in repl's generic
port. Not sure it's returning anything useful. Minor cleanup of
configure.ss. Seems to limp along somewhat even with Tcl/Tk 8.0.
Added dependency on config.make for the shared library.
(OW) [repl-text.ss, configure.ss, ./Makefile, ./src/swl/Makefile]
--- 0.9s ---------------------------------------------------------------------
07/10/98 (bug fix) Numeric keypad enter key now works in repl: the repl was
explicitly checking for #\newline and #\return in the key-press method,
this has been moved to the insert method (integrating with paste fix
from 7/9/98) since there are other (inherited) key-press sequences
that generate newline (eg. ^J and ^M). Removed "input not allowed here"
mini-buffer error message from repl. Now warping cursor to end of
the user input area when input is attempted while cursor is not in
the user input area.
(OW) [repl-text.ss]
07/09/98 (bug fix & feature change) swl:error-log-port window is now raised
when mapped in hopes of getting it into view. Not immediately clear
how to keep this window on top of the stacking order (since we don't
have access to a toplevel for which it can be transient).
Also modified make-font macro so that it attempts to substitute for
the specified font if it cannot be found. Will rip this out for Tk 8.
(OW) [init.ss, option.ss]
07/09/98 (new feature) Modified repl so that using the mouse to paste a
selection behaves more like an xterm. In particular, if the selection
ends with a newline (followed by optional whitespace), the repl now
acts as if the user had pressed newline.
(OW) [repl-text.ss]
07/08/98 (bug fix) Documentation generator now correctly includes documentation
for methods defined in only one class. Removed obsolete file "macros"
and added a dependency on macros.tex. Also increased width of the
swl:error-log-port window.
(OW) [documentation.ss, src/dc/macros (deleted), src/dc/Makefile,
init.ss]
07/08/98 (bug fix) Fixed install-doc target so that the relevant Makefiles
now include config.make (soon to be eliminated when we go to autoconf).
This means that the documentation can be built using the specified
Scheme compiler.
(OW) [Makefile, src/dc/Makefile, src/dc/stex/Makefile]