A slightly modified version of the 3.0 release was placed on self.stanford.edu and mushroom.cs.man.ac.uk at the weekend.
The affected files are: Self.tar.gz Optional.SelfSource.tar.gz in both the sun4 and svr4 distributions. There is a new file, called KNOWN-PROBLEMS, which documents some of the problems which have been encountered, and possible workarounds (a copy is appended).
The changes are (together with the names of the modified modules): - Slightly modified default font names; the previous defaults did not work under MIT X11R5 - A bug fix for error notifiers (they did not go away automatically) - A bug fix in handling the Paste key (using it outside the text editor could cause problems) - An improved version of CheckInstall - A fix for the comparator (it couldn't be dismissed) If you have a working Self system, you can bring it up to date by evaluating the code at the end of this message (from "cut here"): place it in a file called, say, fixes.sm, and then at the Self prompt enter 'fixes.sm' _RunScript You should then save the world.
-Mario Wolczko
Sun Microsystems Labs., Inc., 2550 Garcia Ave, M/S MTV 29-116, Mountain View, CA 94043, U.S.A. tel: 415 336 6022, fax: 415 969 7269.
====================KNOWN-PROBLEMS Spy won't start --------------- If you're using MIT X11R5 and not OpenWindows, the default font for the spy is unavailable. You should try setting a different font and restarting it: _SpyFont: 'fixed' _Spy: true
Sluggish behavior ----------------- If the performance of the ui is poor, with menus taking more than a second to respond, and objects taking many seconds to appear or disappear, consider the following actions: - If your machine doesn't have a graphics accelerator (such as a basic SparcStation 1 or 2, or IPC), you can turn animation off with the Self expression ui animationOff - If Self is paging heavily (as reported by the spy, by large numbers in the "pi" and "po" column of vmstat, of by continuous disk activity), close as many other applications as you can. Also, it may be worth decreasing the size of the Self heap by setting the environment variable OLDSIZE. The default size is 10Mb; reducing this by 1000000 or 2000000 may help. - In the worst case, you will need to get more RAM. This is likely if you have 28Mb or less; some 10Mb are required by Unix and OpenWindows/X. One option is to run Self remotely; this may solve the memory problem, but display will be impacted adversely. If are paging across the network, we do not recommend running Self on a machine with less than 32Mb. In any case, if you have performance problems, please report the problems and the machine configuration (model, memory and swap sizes, display type, OS version, and display system (OpenWindows or MIT or other, with version)) to self-bugs@self.stanford.edu, as the Self group would like to characterise performance problems more accurately in order to address them in future patches and releases.
Known bugs for which patches are forthcoming (as of 14 Jan 94) --------------------------------------------------------------
None
====================cut here for fixes preferences boxCodeFont: 'lucidasanstypewriter-12'. preferences buttonFont: 'lucidasans-10'.
preferences _AddSlots: ( | { 'Category: copying' _ setDefaultPreferences = ( "ugh: added for filing out" allowArrowGrabbing: true. blurArrows: false. blurBodies: true. boxCodeFont: 'lucidasanstypewriter-12'. boxFont: 'lucidasans-12'. boxObjectNameFont: 'lucidasans-12'. boxParentFont: 'lucidasans-12'. boxPrivateFont: 'lucidasans-italic-12'. boxPrivateParentFont: 'lucidasans-italic-12'. boxPublicFont: 'lucidasans-bold-12'. boxPublicParentFont: 'lucidasans-bold-12'. buttonFont: 'lucidasans-10'. clickRaiseLowerUI: false. contentsInSpecialFont: false. defaultSlotCountThreshold: 5. filesToShow: set copyRemoveAll. fixedEditorFont: 'lucidasans-12'. initialWindowRect: ((0)@(0)) #! ((629)@(394)). isearchIgnoreCase: true. menuFont: 'lucidasans-12'. mergeAssignmentSlots: true. noisy: true. notifierWaitTime: 10. printStackOnError: true. showParentStar: true. textEditorFont: '6x13'. uiAnimationDelay: 10. uiColorFile: 'ui.colors'. uiFullScreen: false. uiIconFile: 'ui.icon'. useAmpersandToBackground: false. useFontStyles: true. xDisplay: ''. highlightParseError: true). _ thisObjectPrints = true. } | )
traits userInterface uiWorld _AddSlots: ( | { 'Category: keying' kbdPaste = ( (myUI mirrorInPasteBuffer lookupKey: 'clone') isEmpty ifFalse: [ myUI add: myUI mirrorInPasteBuffer reflectee clone ] ). } | )
traits windowing diffViewer _AddSlots: ( | ^ init = ( | h = 100. slW = 13. tW = 300. | offsetFromBody: 0@0.
cancelButton: (button copySize: 58@16) name: 'Dismiss'. cancelButton command: (| p* = traits clonable. textEditor. doIt: context = (textEditor display. context body banish). doIt: context Shift: shift = ( doIt: context ). |) copy textEditor: self. addContext: cancelButton At: (140@140) + boxFaceOffset.
methodSlider: (slider copySize: slW @ h) name: 'slider1'. addContext: methodSlider At: (2@2) + boxFaceOffset + (topMargin @ sideMargin). methodSlider value: 0.
methodView: (methodView copySize: tW @ h) name: 'text1'. addContext: methodView At: (2@2) + boxFaceOffset + ((slW + 2)@0) + (topMargin @ sideMargin). methodView init.
methodView2: (methodView2 copySize: tW @ h) name: 'text2'. addContext: methodView2 At: (2@2) + boxFaceOffset + ((slW + 2 + tW + 2)@0) + (topMargin @ sideMargin). methodView2 init.
methodSlider2: (slider copySize: slW @ h) name: 'slider2'. addContext: methodSlider2 At: (2@2) + boxFaceOffset + ((slW + 2 + tW + tW)@0) + (topMargin @ sideMargin). methodSlider2 value: 0.
resizeHandle: resizeButton copySize: 10@10. addContext: resizeHandle At: 10@10. resize: size). | )
self-interest@lists.selflanguage.org