From dyoo at cs.wpi.edu Thu Feb 15 20:40:08 2007 From: dyoo at cs.wpi.edu (Daniel Yoo) Date: Fri Feb 16 12:34:08 2007 Subject: [PLT announcement] [plt-scheme] ANN: DivaScheme 2.2 released Message-ID: DivaScheme ...for times when you wish your doctor would listen This is a minor point release of DivaScheme; it includes a few bug fixes, as well as the much requested feature of '[' for the context-sensitive open-paren feature in DrScheme. To install, evaluate: (require (planet "install.ss" ("divascheme" "divascheme.plt" 1 1))) at the DrScheme REPL. If you've previously installed DivaScheme, the install.ss invocation above should automatically update your preferences to support the new keybindings for contextual open-paren. After restarting DrScheme, DivaScheme can then be toggled on or off by pressing F4. More information about DivaScheme, including a demo screencast, can be found on its web site: http://www.cs.brown.edu/research/plt/software/divascheme/ Changes ======= Release 2.2: Features: * Contextual open-paren keybinding. * Bug fix for CAPS LOCK during command mode. * Miscellaneous bug fixes. Thanks ====== DivaScheme was designed and implemented by Romain Legendre, Guillaume Marceau, Danny Yoo, Kathi Fisler and Shriram Krishnamurthi. We thank Jay McCarthy for his help as well as the other members of PLT for their support. Thanks also to Aleks Bromfield, Jon Rafkind, Matthias Felleisen, Mark Haniford, Chris Warrington, David Cabana, Kyle Smith, and Geoffrey Knauth for their feedback and bug reports. Send comments and bug reports to dyoo@cs.wpi.edu. From eli at barzilay.org Tue Mar 27 04:23:46 2007 From: eli at barzilay.org (Eli Barzilay) Date: Tue Mar 27 04:24:17 2007 Subject: [PLT announcement] Patch for v360 Message-ID: <17928.54418.589482.814558@kinyarwanda.ccs.neu.edu> A patch for v360 is now available at http://download.plt-scheme.org/patches/360/ This patch is only for Unix/X platforms with a new version of libx11. In other words: if you have no problems, then you don't need to read this. The patch fixes a bug in MrEd for Unix/X. The bug is exposed when using version 1.1 of libx11 (which is the version included with Ubuntu Feisty Fawn, for example). Specifically, DrScheme and other MrEd-based programs would fail as soon as a mouse button is clicked or a key was pressed. Details: MrEd internally uses the XCheckIfEvent function, and it supplies a callback that incorrectly called other X11 functions. Starting with libx11 1.1, the callback restriction is enforced through run-time checks. The patch to MrEd moves the disallowed calls out of the callback function. -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://www.barzilay.org/ Maze is Life! From eli at barzilay.org Sun May 6 04:08:22 2007 From: eli at barzilay.org (Eli Barzilay) Date: Sun May 6 04:25:20 2007 Subject: [PLT announcement] PLT Scheme v369.100 is available for testing Message-ID: <17981.36086.434950.846888@winooski.ccs.neu.edu> Version 369.100 is now available for testing from http://pre.plt-scheme.org/installers/ (Note that this not available from the usual download site.) If all goes well, we will turn this version into a v370 release within a couple of weeks. This is (again) a release that is more substantial than usual -- * DrScheme now saves `metadata' in its files, which means that the language level and other settings are saved with the file. This is done with a reader, so the result is a file that can be used outside of DrScheme too. Also, this includes teachpacks, which are also specific to files. * The default build, and the distributed installers use the 3m precise garbage collector. * The unit system is completely new, and backward incompatible with v360 and earlier. There are libraries that provide the old functionality as a quick upgrading solution. Your help and feedback in testing this new release candidate would be much appreciated. -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://www.barzilay.org/ Maze is Life! From eli at barzilay.org Mon May 21 18:26:21 2007 From: eli at barzilay.org (Eli Barzilay) Date: Mon May 21 18:26:49 2007 Subject: [PLT announcement] PLT Scheme v370 Message-ID: <200705212226.l4LMQLeA012274@winooski.ccs.neu.edu> PLT Scheme version 370 is now available from http://download.plt-scheme.org/ Some highlights: * The conservative garbage collector (CGC) has been replaced with a precise garbage collector (3m) in the standard build. For most users, this change simply amounts to "better performance in space and time". For example, a long-running DrScheme instance typically uses much less memory than before. The new memory manager also supports a new "Limit Memory..." option (in DrScheme's "Scheme" menu) to limit the memory use of a programming running inside DrScheme. For those who work with C-implemented libraries and extensions, the switch to precise collection may complicate interoperability. To a large extent, however, `(lib "foreign.ss")' works the same with both collectors. (But note that the 3m is a moving collector, so be careful with passing Scheme objects to C.) Although our pre-built binaries use the new collector, builds from source using the conservative collector are still supported. * For a program written with one of the the "How to Design Programs" (HtDP) languages, DrScheme saves the program with meta-information that identifies the language and records the teachpacks used by the program. DrScheme's teachpack GUI now works only with the HtDP languages. In other languages, use `require' to access teachpacks. The meta-information is in the form of a reader extension that turns the file content into a `module'-based program, which means that teaching-language files can be loaded directly into MzScheme or used with other PLT Scheme tools. * The HtDP "world.ss" and "image.ss" teachpacks have been revised, including support for the creation of animated GIFs. * Unit-based servlets are no longer supported in the web server. Use module-based servlets, instead. (Servlets can be implemented using a `unit' within a `module', but the web server's API is provided through a module.) * A new `(lib "unit.ss")' library replaces the old one and provides a simpler and more flexible syntax. The `(lib "unitsig.ss")' library is deprecated but still available as `(lib "unitsig200.ss")', and the old `(lib "unit.ss")' is available as `(lib "unit200.ss")'. Feedback Welcome, -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://www.barzilay.org/ Maze is Life! From eli at barzilay.org Wed May 23 07:51:55 2007 From: eli at barzilay.org (Eli Barzilay) Date: Wed May 23 07:52:23 2007 Subject: [PLT announcement] Re: [plt-scheme] PLT Scheme v370 In-Reply-To: References: <200705212226.l4LMQLeA012274@winooski.ccs.neu.edu> Message-ID: <18004.10971.169488.621268@kinyarwanda.ccs.neu.edu> On May 23, Hans Oesterholt-Dijkema wrote: > So, If I'm using Scheme_Object * in my extensions, what > must I do to prevent them from being moved around? You use the xform thing (through mzc, I don't remember the details, sorry) and Scheme_Object* pointers will be moved when there's a GC and pointers adapted. You need to be aware of this when handing off such pointers to other C code. If you don't want them to move you need to allocate them yourself (through the system's malloc). -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://www.barzilay.org/ Maze is Life! From eli at barzilay.org Fri May 25 04:12:55 2007 From: eli at barzilay.org (Eli Barzilay) Date: Fri May 25 04:13:25 2007 Subject: [PLT announcement] Re: [plt-scheme] PLT Scheme v370 In-Reply-To: <46569918.30600@gawab.com> References: <200705212226.l4LMQLeA012274@winooski.ccs.neu.edu> <18004.10971.169488.621268@kinyarwanda.ccs.neu.edu> <46569918.30600@gawab.com> Message-ID: <18006.39559.759333.984331@kinyarwanda.ccs.neu.edu> On May 25, Hans Oesterholt-Dijkema wrote: > I don't really care if the memory of a scheme object gets moved, > if the GC also updates the pointers to this memory. In general, you should be careful with any C code that may keep a reference to something. For example -- say that you allocate pull a C string out of a Scheme bytes object, and pass the pointer to a C function. As long as the call is active, no GC will happen and things are fine -- but if the C code will keep a reference to that string and then return, then at some point in the future, the string may have been moved. > Will the GC do that (for all possible pointers)? If you use it properly (compile through mzc), then yes. -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://www.barzilay.org/ Maze is Life! From eli at barzilay.org Mon Jun 18 02:52:31 2007 From: eli at barzilay.org (Eli Barzilay) Date: Mon Jun 18 16:33:17 2007 Subject: [PLT announcement] PLT v370p1 Message-ID: <18038.11183.857956.811962@kinyarwanda.ccs.neu.edu> A patch is now available for PLT Scheme v370 at http://download.plt-scheme.org/patches/370/ This patch fixes two bugs: - teachpacks that contain inline images now work properly - DrScheme's REPL's pict printer now signals errors with proper source location when the pict's drawing has a runtime error (instead of locking up the drscheme window). Installing the patch is easy, since it is a simple .plt archive. See the above web page for further instructions. -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://www.barzilay.org/ Maze is Life! From eli at barzilay.org Sat Jul 7 17:44:41 2007 From: eli at barzilay.org (Eli Barzilay) Date: Sat Jul 7 17:50:55 2007 Subject: [PLT announcement] PLT v370p2 Message-ID: <18064.2377.591097.472744@kinyarwanda.ccs.neu.edu> A second patch is now available for PLT Scheme v370 at http://download.plt-scheme.org/patches/370/ This patch fixes two additional bugs, and it also includes the previous patch. Here is the complete list of bugfixes in 370p2. * Autosaving, when using the teaching languages, would signal an error, but not anymore. * Sometimes, clicking on the popup menu in the bottom right would trigger an internal error. That's now fixed. * Teachpacks that contain inline images now work properly. * DrScheme's REPL's pict printer now signals errors with proper source location when the pict's drawing has a runtime error (instead of locking up the drscheme window). Installing the patch is easy, since it is a simple .plt archive. You can install it regardless of whether you applied the previous patch. See the above web page for further instructions. -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://www.barzilay.org/ Maze is Life! From eli at barzilay.org Sat Aug 18 03:59:48 2007 From: eli at barzilay.org (Eli Barzilay) Date: Sat Aug 18 11:26:58 2007 Subject: [PLT announcement] PLT Scheme v371 Message-ID: <200708180759.l7I7xm66015838@winooski.ccs.neu.edu> PLT Scheme version 371 is now available from http://download.plt-scheme.org/ This is mostly a bug-fix release. Changes: * The debugger now works across multiple files and supports "step over" and "step out" operations. * HtDP teachpacks: the world.ss teachpack now exports two add-line functions: one from image.ss and one for adding lines to scenes. * ProfessorJ now includes a language level between Intermediate and Advanced, Intermediate + access, that includes all of Intermediate and introduces access modifiers and overloading. The language manuals contain the complete details. Feedback Welcome, -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://www.barzilay.org/ Maze is Life! From dyoo at cs.wpi.edu Mon Sep 10 22:21:19 2007 From: dyoo at cs.wpi.edu (Danny Yoo) Date: Tue Sep 11 09:29:05 2007 Subject: [PLT announcement] ANN: DivaScheme 2.3 released! Message-ID: DivaScheme ...for times when you wish your doctor would listen This is a minor point release of DivaScheme for bug fixes and performance tuning. DivaScheme requires DrScheme >=360. To install, evaluate: (require (planet "install.ss" ("divascheme" "divascheme.plt" 1 3))) at the DrScheme REPL. After restarting DrScheme, DivaScheme can then be toggled on or off by pressing F4. More information about DivaScheme, including a demo screencast, can be found on its web site: http://www.cs.brown.edu/research/plt/software/divascheme/ Changes ======= Release 2.3: Features and bug fixes: * Graphical snips are supported. * Comments can be edited without exiting DivaScheme. * Up and down can be used in Insert Mode. install.ss will try to automatically upgrade your keybindings appropriately. * Tab autocompletion behavior has been improved. In DrScheme v371+, autocompletion will consider keywords provided by the language. * generate-stags no longer installs when DivaScheme is installed, since not all users have directory write permissions to plt/bin. Search for "generate-stags" in Help Desk for details on installing generate-stags. * Improved lexical whitespace cleanup and tokenization. * Bugfix: switching tabs while in insert mode would violate invariants. * Workaround: Check Syntax is temporarily disabled during Insert Mode. * Bugfix: joining on column 1 would potentially collapse two symbols. * Lots of other bug fixes and general improvements in memory usage and performance. Thanks ====== DivaScheme was designed and implemented by Romain Legendre, Guillaume Marceau, Danny Yoo, Kathi Fisler and Shriram Krishnamurthi. We thank Jay McCarthy for his help as well as the other members of PLT for their support. Thanks also to Aleks Bromfield, Jon Rafkind, Matthias Felleisen, Mark Haniford, Chris Warrington, David Cabana, Kyle Smith, Geoffrey Knauth, Will Farr, and Matt Jadud for their feedback and bug reports. Send comments and bug reports to dyoo@cs.wpi.edu. From eli at barzilay.org Sat Dec 29 00:58:59 2007 From: eli at barzilay.org (Eli Barzilay) Date: Sat Dec 29 02:26:08 2007 Subject: [PLT announcement] PLT Scheme v372 Message-ID: <200712290558.lBT5wxVg003446@winooski.ccs.neu.edu> PLT Scheme version 372 is now available from http://download.plt-scheme.org/ This is mostly a bug-fix release. Changes: * DrScheme now supports name completion via Ctl-/ (Windows and X) or Cmd-/ (Mac OS X). Completion is sensitive to the current language in DrScheme, but it is not sensitive to lexical bindings. * DrScheme's stepper now supports the "check-expect", "check-within", and "check-error" forms of the testing.ss teachpack. * A number of bug fixes and small improvements for ProfessorJ. The grammar for the current release slightly differs from the one in HtDC. Feedback Welcome, -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://www.barzilay.org/ Maze is Life!