[racket-dev] Release Announcement for v5.2.1
Below is a rough list of additions and changes for v5.2.1. If you are responsible for a change, please either elaborate it into an announcement item or tell me if it shouldn't be included in the announcement. Let me know if I've missed something. -- - racket - io now uses poll() or kqueue() when available - intern literal strings, bytes, regexps, chars, numbers - floating-point ops now use SSE (when available?) - cross-module function inlining, racket/performance-hint - OS X build defaults to the platform it is built on (i386 vs x86_64) - Add a tutorial to the FFI overview - racket/class: send/keyword-apply, dynamic-send - generalized gcd, lcm to rationals - syntax/datum, datum-case, etc - improve choice-evt complexity - deprecation note for ActiveX part of MysterX - racket/draw - generalized brush transform to apply to stipple - racket/draw: generalize "face" in font% to be description - added text-outline to dc-path - drracket - No stacktrace for syntax errors in DrRacket - change current-directory default init value - render convertibles as png (or changed since?) - autocompletion tweak - check syntax UI improvements? - typed/racket - Add `typecheck-fail' form for explicit type errors. - case-> bug fix - scribble - removed distinctness of "\n" generated by at-reader - plai - new gc code - redex - define-judgment, define-relation improvements - optimizations, caching - cycle check for define-language - net - changes to net/sendmail, net/unihead - changes to net/mime - synchronizable events (net/websocket/conn) - plot improvements - click to drag and zoom - right-click opens editor pop-up menu - removed libfit - others? - icons and images package - new icons - libraries - teaching languages - planet require syntax - 2htdp/image - added bitmap/file - 2htdp/universe - prefab structs - added game pad, pad-handler (?) - 2htdp/planetcute - db - added support for postgresql arrays - implement mysql old password support, connect without db - fixed sqlite3 crashing bug - nested transactions - in-slice sequences - DMdA - fix infinite recursive signatures - record signatures without fields - document which signatures work with check-property - macro-stepper - display binding info for more phases - don't evaluate program, no repl - xrepl fixes -- _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1
A few minutes ago, Ryan Culpepper wrote: > > - scribble >- removed distinctness of "\n" generated by at-reader This wasn't completely reliable anyway. > - net >- changes to net/sendmail, net/unihead This is still work in progress. The visible side of it is that `net/sendmail' was severely broken wrt unicode headers (email addresses or subject), and now it works. I don't know if this is worth inclusion. > - in-slice sequences This is in unstable. > - xrepl fixes Drop too. (They're just minor fixes.) -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://barzilay.org/ Maze is Life! _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1
At Mon, 23 Jan 2012 17:27:47 -0700, Ryan Culpepper wrote: > - racket >- io now uses poll() or kqueue() when available >- floating-point ops now use SSE (when available?) >- cross-module function inlining, racket/performance-hint * Performance improvements include the use of epoll()/kqueue() instead of select() for the Racket thread scheduler, cross-module inlining of small functions, and the use of SSE instead of x87 for JIT-compiled floating-point operations on platforms where SSE is always available (including x86_64 platforms). A related change is the interning of literal numbers, strings, byte strings, characters, and regexps that appear in code and syntax objects. >- deprecation note for ActiveX part of MysterX * MysterX's ActiveX support is deprecated and will be removed in the next release. MysterX's core COM functionality will become deprecated in the next release, but COM functionality will be supported for the foreseeable future as a compatibility layer over a forthcoming `ffi/com' library. >- OS X build defaults to the platform it is built on (i386 vs x86_64) >- Add a tutorial to the FFI overview >- racket/class: send/keyword-apply, dynamic-send >- generalized gcd, lcm to rationals >- syntax/datum, datum-case, etc >- improve choice-evt complexity > > - racket/draw >- generalized brush transform to apply to stipple >- racket/draw: generalize "face" in font% to be description >- added text-outline to dc-path These all seem too minor to me. The OS X build change is almost worth noting, but most OS X users surely download a pre-built installation, and the build change is not relevant to those users. _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1
On Mon, Jan 23, 2012 at 5:27 PM, Ryan Culpepper wrote: > - plai > - new gc code This is unstable. > - net > - synchronizable events (net/websocket/conn) This is too minor to mention. Jay -- Jay McCarthy Assistant Professor / Brigham Young University http://faculty.cs.byu.edu/~jay "The glory of God is Intelligence" - D&C 93 _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1
On Mon, Jan 23, 2012 at 8:57 PM, Matthew Flatt wrote: > Performance improvements include the use of epoll()/kqueue() instead > of select() for the Racket thread scheduler I think this deserves more prominent notice -- the GHC developers wrote a whole paper about it when they did this. -- sam th sa...@ccs.neu.edu _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1
On Mon, Jan 23, 2012 at 6:27 PM, Ryan Culpepper wrote: > - drracket > - No stacktrace for syntax errors in DrRacket > - change current-directory default init value > - render convertibles as png (or changed since?) > - autocompletion tweak > - check syntax UI improvements? > > - redex > - define-judgment, define-relation improvements > - optimizations, caching > - cycle check for define-language > > - icons and images package > - new icons > - libraries > > - teaching languages > - planet require syntax > > - 2htdp/image > - added bitmap/file > * The performance of Redex's matcher has been substantially improved; depending on the model you should see improvements between 2x and 50x in the time it takes to reduce terms. * DrRacket now has a new slate of icons The other seem too minor (and the second one is questionable; I think everyone will appreciate them, but few will download because of that, I guess). Robby _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1
On 01/23/2012 06:30 PM, Robby Findler wrote: On Mon, Jan 23, 2012 at 6:27 PM, Ryan Culpepper wrote: - drracket - No stacktrace for syntax errors in DrRacket - change current-directory default init value - render convertibles as png (or changed since?) - autocompletion tweak - check syntax UI improvements? - redex - define-judgment, define-relation improvements - optimizations, caching - cycle check for define-language - icons and images package - new icons - libraries - teaching languages - planet require syntax - 2htdp/image - added bitmap/file * The performance of Redex's matcher has been substantially improved; depending on the model you should see improvements between 2x and 50x in the time it takes to reduce terms. * DrRacket now has a new slate of icons The other seem too minor (and the second one is questionable; I think everyone will appreciate them, but few will download because of that, I guess). I expect Neil will elaborate on the new library that produced them, and "DrRacket uses them" can be attached to that item. Ryan _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1
On 01/23/2012 08:04 PM, Ryan Culpepper wrote: On 01/23/2012 06:30 PM, Robby Findler wrote: * DrRacket now has a new slate of icons The other seem too minor (and the second one is questionable; I think everyone will appreciate them, but few will download because of that, I guess). I expect Neil will elaborate on the new library that produced them, and "DrRacket uses them" can be attached to that item. If we're announcing it, this could work: * A new `images' library produces ray-traced icons and logos, and provides macros to embed these and other computed bitmaps into compiled programs. DrRacket is the first major consumer. When I make the rendering API public - which includes the ray tracer, pict-like combiners for two-and-a-half-dimensional bitmaps, and fast image processing primitives, all in Typed Racket - there will be more to say. Do we want to wait to announce `images' until then? Neil T _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1
On 01/23/2012 05:27 PM, Ryan Culpepper wrote: Below is a rough list of additions and changes for v5.2.1. If you are responsible for a change, please either elaborate it into an announcement item or tell me if it shouldn't be included in the announcement. Let me know if I've missed something. -- - plot improvements - click to drag and zoom - right-click opens editor pop-up menu - removed libfit - others? * Plots look nicer, render up to 4 times faster, and are more correct at very small and very large scales. New features include customizable dual axis ticks and transforms (e.g. log axes, date and currency ticks, axis interval collapse and stretch), stacked histograms, and 3D vector fields. The legacy `fit' function and libfit have been removed. Neil T _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1
On 01/23/2012 09:07 PM, Neil Toronto wrote: On 01/23/2012 08:04 PM, Ryan Culpepper wrote: On 01/23/2012 06:30 PM, Robby Findler wrote: * DrRacket now has a new slate of icons The other seem too minor (and the second one is questionable; I think everyone will appreciate them, but few will download because of that, I guess). I expect Neil will elaborate on the new library that produced them, and "DrRacket uses them" can be attached to that item. If we're announcing it, this could work: * A new `images' library produces ray-traced icons and logos, and provides macros to embed these and other computed bitmaps into compiled programs. DrRacket is the first major consumer. When I make the rendering API public - which includes the ray tracer, pict-like combiners for two-and-a-half-dimensional bitmaps, and fast image processing primitives, all in Typed Racket - there will be more to say. Do we want to wait to announce `images' until then? I thought it was already public. If not, maybe we should drop this item. Ryan _ Racket Developers list: http://lists.racket-lang.org/dev
[racket-dev] Release Announcement for v5.2.1, second draft
Below is the second draft of the release announcement items for v5.2.1. Let me know if I've missed something. -- * Performance improvements include the use of epoll()/kqueue() instead of select() for the Racket thread scheduler, cross-module inlining of small functions, and the use of SSE instead of x87 for JIT-compiled floating-point operations on platforms where SSE is always available (including x86_64 platforms). A related change is the interning of literal numbers, strings, byte strings, characters, and regexps that appear in code and syntax objects. * MysterX's ActiveX support is deprecated and will be removed in the next release. MysterX's core COM functionality will become deprecated in the next release, but COM functionality will be supported for the foreseeable future as a compatibility layer over a forthcoming `ffi/com' library. * The performance of Redex's matcher has been substantially improved; depending on the model you should see improvements between 2x and 50x in the time it takes to reduce terms. * The `typecheck-fail' form allows macro creators to customize the error messages that Typed Racket produces. This is especially useful when creating pattern matching macros. * The `2htdp/universe' library's `big-bang' form supports an experimental game pad key handler. (edu: The handler accepts a limited number of keys, similar to a game pad; the addition of a game-pad handler also overlays the attached game pad icon on the big-bang canvas. A compatible addition will appear in WeScheme.) * In the DMdA teaching languages, infinite recursive signatures ("streams", for example) with no intervening `mixed' are now supported, and the signatures of record definitions without fields now have generators for use with `property'. * The `db' library now supports nested transactions and PostgreSQL arrays. Bugs involving MySQL authentication and memory corruption in the SQLite bindings have been fixed. * The Macro Stepper tool in DrRacket no longer executes a program after expanding it. * Plots look nicer, render up to 4 times faster, and are more correct at very small and very large scales. New features include customizable dual axis ticks and transforms (e.g. log axes, date and currency ticks, axis interval collapse and stretch), stacked histograms, and 3D vector fields. The legacy `fit' function and libfit have been removed. -- _ Racket Developers list: http://lists.racket-lang.org/dev
[racket-dev] Release Announcement for v5.2.1, third draft
Below is the third (and hopefully final) draft of the release announcement items for v5.2.1. Last call for comments. -- * Performance improvements include the use of epoll()/kqueue() instead of select() for the Racket thread scheduler, cross-module inlining of small functions, and the use of SSE instead of x87 for JIT-compiled floating-point operations on platforms where SSE is always available (including x86_64 platforms). A related change is the interning of literal numbers, strings, byte strings, characters, and regexps that appear in code and syntax objects. * DrRacket uses a set of composable ray-traced icons available from the new `images' library collection. * Typed Racket's `typecheck-fail' form allows macro creators to customize the error messages that Typed Racket produces. This is especially useful when creating pattern matching macros. * The performance of Redex's matcher has been substantially improved; depending on the model you should see improvements between 2x and 50x in the time it takes to reduce terms. * Plots look nicer and are more correct at very small and very large scales. New features include customizable dual axis ticks and transforms (e.g. log axes, date and currency ticks, axis interval collapse and stretch), stacked histograms, and 3D vector fields. The legacy `fit' function and libfit have been removed. * The `2htdp/universe' library's `big-bang' form supports an experimental game pad key handler. (edu: The handler accepts a limited number of keys, similar to a game pad; the addition of a game-pad handler also overlays the attached game pad icon on the big-bang canvas. A compatible addition will appear in WeScheme.) * The `db' library now supports nested transactions and PostgreSQL arrays. Bugs involving MySQL authentication and memory corruption in the SQLite bindings have been fixed. * The Macro Stepper tool in DrRacket no longer executes a program after expanding it. * In the DMdA teaching languages, infinite recursive signatures ("streams", for example) with no intervening `mixed' are now supported, and the signatures of record definitions without fields now have generators for use with `property'. * MysterX's ActiveX support is deprecated and will be removed in the next release. MysterX's core COM functionality will become deprecated in the next release, but COM functionality will be supported for the foreseeable future as a compatibility layer over a forthcoming `ffi/com' library. -- _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1, second draft
> * The `2htdp/universe' library's `big-bang' form supports an > experimental game pad key handler. I just want to make sure I know what this is. This is referring to: https://docs.google.com/document/d/1bDcsplgE0jFAavvxYWRISpKb1Z94MRPtQ_EjyB3e7hI/edit right? _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1, second draft
There's no mention of the new icons at all now (not the library). Superficial, but will probably make many happy. Two hours ago, Ryan Culpepper wrote: > * Performance improvements include the use of epoll()/kqueue() >instead of select() for the Racket thread scheduler, >cross-module inlining of small functions, and the use of SSE >instead of x87 for JIT-compiled floating-point operations on >platforms where SSE is always available (including x86_64 >platforms). A related change is the interning of literal >numbers, strings, byte strings, characters, and regexps that >appear in code and syntax objects. > > * MysterX's ActiveX support [...] This should move down, since it's very unpopular. > * The performance of Redex's matcher has been substantially >improved; depending on the model you should see improvements >between 2x and 50x in the time it takes to reduce terms. > > * The `typecheck-fail' form allows macro creators to customize the >error messages that Typed Racket produces. This is especially >useful when creating pattern matching macros. It's not clear on a quick glance that this is a TR thing. (Also, "customize" sounds a little like underselling it, but maybe there's no good way to talk about what can be done with it.) > * The `2htdp/universe' library's `big-bang' form supports an >experimental game pad key handler. Maybe move this one up a little? > * In the DMdA teaching languages, infinite recursive signatures >("streams", for example) with no intervening `mixed' are now >supported, and the signatures of record definitions without >fields now have generators for use with `property'. And this one down? > * The `db' library now supports nested transactions and PostgreSQL >arrays. Bugs involving MySQL authentication and memory corruption >in the SQLite bindings have been fixed. > > * The Macro Stepper tool in DrRacket no longer executes a program >after expanding it. > > * Plots look nicer, render up to 4 times faster, and are more >correct at very small and very large scales. New features >include customizable dual axis ticks and transforms (e.g. log >axes, date and currency ticks, axis interval collapse and >stretch), stacked histograms, and 3D vector fields. The legacy >`fit' function and libfit have been removed. "up to 4 times faster" sounds fishy -- I think that just "faster" sounds better. Also, should move up. -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://barzilay.org/ Maze is Life! _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1, second draft
On Wed, Jan 25, 2012 at 12:23 AM, Eli Barzilay wrote: > There's no mention of the new icons at all now (not the library). > Superficial, but will probably make many happy. I think we should mention the icons, for two reasons: 1. Neil did a ton of work, and it should be recognized. 2. The new icons are a noticeable change, and people will be surprised if we don't mention it. -- sam th sa...@ccs.neu.edu _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1, second draft
* Plots look nicer, render up to 4 times faster, and are more correct at very small and very large scales. New features include customizable dual axis ticks and transforms (e.g. log axes, date and currency ticks, axis interval collapse and stretch), stacked histograms, and 3D vector fields. The legacy `fit' function and libfit have been removed. "up to 4 times faster" sounds fishy -- I think that just "faster" sounds better. Also, should move up. Probably gives the wrong impression anyway. I just tested, and found that most 2D plots are a bit slower. Bah. The 3D plots are generally 1.5x faster. (FWIW, the `points' plots get 4x.) So it's a wash. Just take that part out, leaving the first sentence as Plots look nicer and are more correct at very small and very large scales. Neil T _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1, second draft
On 01/24/2012 10:30 PM, Sam Tobin-Hochstadt wrote: On Wed, Jan 25, 2012 at 12:23 AM, Eli Barzilay wrote: There's no mention of the new icons at all now (not the library). Superficial, but will probably make many happy. I think we should mention the icons, for two reasons: 1. Neil did a ton of work, and it should be recognized. 2. The new icons are a noticeable change, and people will be surprised if we don't mention it. How about this? * DrRacket uses a new set of composable ray-traced icons available from the new `images' library collection. The parts of the `images' collection currently visible to users seem to be mainly DrRacket-oriented. The next release announcement can talk about the rendering and composition features, once those become public. Ryan _ Racket Developers list: http://lists.racket-lang.org/dev
Re: [racket-dev] Release Announcement for v5.2.1, second draft
On Fri, Jan 27, 2012 at 2:44 PM, Ryan Culpepper wrote: > On 01/24/2012 10:30 PM, Sam Tobin-Hochstadt wrote: >> >> On Wed, Jan 25, 2012 at 12:23 AM, Eli Barzilay wrote: >>> >>> There's no mention of the new icons at all now (not the library). >>> Superficial, but will probably make many happy. >> >> >> I think we should mention the icons, for two reasons: >> >> 1. Neil did a ton of work, and it should be recognized. >> 2. The new icons are a noticeable change, and people will be surprised >> if we don't mention it. > > > How about this? > > * DrRacket uses a new set of composable ray-traced icons > available from the new `images' library collection. Remove the first "new" and it seems okay to me. Robby _ Racket Developers list: http://lists.racket-lang.org/dev