[racket-dev] toward a new Racket macro expander

2015-02-26 Thread Matthew Flatt
I've been working on a new macro expander for Racket, and I'm starting to think that it will work. The new expander is not completely compatible with the current expander --- and that will be an issue if we eventually go forward with the change --- but most existing code still works. Here's a

Re: [racket-dev] make --clone installed pkgs

2015-02-18 Thread Matthew Flatt
At Tue, 17 Feb 2015 19:59:38 -0500, Sam Tobin-Hochstadt wrote: On Tue, Feb 17, 2015 at 6:41 PM, Matthew Flatt mfl...@cs.utah.edu wrote: At Tue, 17 Feb 2015 14:12:54 -0500, Sam Tobin-Hochstadt wrote: Does another system have a Racket-like in-place option (that works better)? I haven't

Re: [racket-dev] file change notifications

2015-02-02 Thread Matthew Flatt
It's good to know that canceling a filesystem-change event can be expensive on Windows, in which case they probably shouldn't be used on Windows when resolving module paths. I'll investigate more and remove the use. Meanwhile, there's not a good way to disable the current use in v6.1, but the

Re: [racket-dev] [plt] Push #29677: master branch updated

2015-01-31 Thread Matthew Flatt
]== Directory summary: 45.1% pkgs/racket-doc/scribblings/raco/ 4.7% pkgs/racket-doc/scribblings/reference/ 47.5% racket/collects/compiler/ ~~ fe9a04d Matthew Flatt mfl...@racket-lang.org 2015-01-08 09:11 : | doc tweaks for `raco {setup,make}` : M

Re: [racket-dev] Full transparency (was: dev Digest, Vol 72, Issue 31)

2015-01-29 Thread Matthew Flatt
At Wed, 28 Jan 2015 16:21:51 -0700, Byron Davies wrote: Your code, commented: (define orig-i (current-inspector)) ; saves the original inspector (define sub-i (make-inspector orig-i)) ;make a new inspector whose parent is the original inspector (current-inspector sub-i) ;makes the new

Re: [racket-dev] build memory use (was: internal error during gc)

2015-01-29 Thread Matthew Flatt
At Thu, 29 Jan 2015 15:34:37 -0300, Gustavo Massaccesi wrote: If there are some easy technical details and advice, you can write a nice blog post about this. Good idea. I have some advice on finalization (don't do it), and I could write about how Racket tries to help when you can't follow that

Re: [racket-dev] feature request: thread-safe memoize-evt

2015-01-29 Thread Matthew Flatt
Hi Jan, Interesting problem! I think I see what you mean: There's no way to combine the completion of an event plus saving its value as an atomic operation, except by putting the synchronization in its own thread. But if you put the synchronization in its own thread, then there's no way to

Re: [racket-dev] Fwd: Sandbox evaluation problem - files with comment boxes

2015-01-27 Thread Matthew Flatt
Yes, it's a bug in v6.1.1. I've just pushed a repair for the next build. Do you need a workaround for v6.1.1? Your variant that sets `sandbox-namespace-specs` is what I would have tried; unfortunately, that runs into a second bug in v6.1.1 that I recently fixed. If you need a workaround other

Re: [racket-dev] (reposted from users) Noisy compiler at PLTSTDERR=info

2015-01-22 Thread Matthew Flatt
At Wed, 21 Jan 2015 11:22:38 -0500, Tony Garnock-Jones wrote: Over the past few months, more and more subsystems have started logging at info level as part of regular compilation. I prefer having PLTSTDERR=info in order to catch log-info that happens at runtime, and find the compile-time log

Re: [racket-dev] Full transparency

2015-01-22 Thread Matthew Flatt
I don't think you want to do anything with the compiler or macros. Instead, it's a matter of having a sufficiently powerful inspector (which is the concept of inspectability turned into a language construct). If you have just (struct a (x)) (a 1) then the result will print as `#a`. But if you

Re: [racket-dev] Compiling a Debuggable Windows Build

2015-01-20 Thread Matthew Flatt
We don't have build products handy on a server, but it shouldn't be difficult to build yourself using Visual Studio 10. I recommend setting up the command line using vcvarsall.bat x86_amd64, and then build from the Git repo using nmake win32-in-place. That process will give you debugging

Re: [racket-dev] [plt] Push #29680: master branch updated

2015-01-14 Thread Matthew Flatt
: Is it perhaps worth being more explicit about this possibility in the docs? I'm thinking of a sentence that says when the parameter is set, delete-file may have only the effect of changing the permissions on the file or similar. Robby On Wed, Jan 14, 2015 at 8:29 AM, Matthew Flatt mfl...@cs.utah.edu

Re: [racket-dev] [plt] Push #29680: master branch updated

2015-01-14 Thread Matthew Flatt
At Wed, 14 Jan 2015 09:07:08 -0500, Neil Toronto wrote: On 01/13/2015 02:00 PM, mfl...@racket-lang.org wrote: 9f3c82c Matthew Flatt mfl...@racket-lang.org 2015-01-13 08:47 : | Windows: change `delete-{file,directory}` to attempt permission correction | | If a file or directory delete

Re: [racket-dev] segfault during make

2015-01-08 Thread Matthew Flatt
Do you have the latest images-doc and/or gui-lib packages? Recently, there was a problem with the images documentation where it tried to use `racket/gui` at document-build time. At the same time, there was also a problem in `racket/gui` that could cause a crash (mainly on Mac OS X) after

Re: [racket-dev] having zo files from two versions

2015-01-08 Thread Matthew Flatt
it and it eventually seems to wind up using just the compiled path during raco setup. Example output is here (I've echoed PLTCOMPILEDROOTS at the top, and note this is under windows): http://pasterack.org/pastes/45913 Is that enough context to see the issue? On Tue, Jan 6, 2015 at 11:58 AM, Matthew

Re: [racket-dev] lib changes between versions

2015-01-07 Thread Matthew Flatt
If your library's name is also `json` you could put in a place that is included in PLTCOLLECTS when you run v5.2.1, but use a PLTCOLLECTS that doesn't include it when your run v6.1 (in much the same way that you use different PLTCOMPILEDROOTS settings for the different versions). If your library

Re: [racket-dev] LTS Racket?

2015-01-07 Thread Matthew Flatt
Some of us have discussed this in recent months. So far, our conclusion has been not yet. At Mon, 05 Jan 2015 10:56:01 +, Stephen De Gabrielle wrote: (Sorry if this is the wrong list) I just saw the LTS Haskell announcement, and it made me wonder if there is a racket equivalent? I've

Re: [racket-dev] Build error

2015-01-07 Thread Matthew Flatt
I wasn't able to replicate the problem, but I think I see what could go wrong. I've pushed an attempt at a repair. At Wed, 7 Jan 2015 18:31:35 +0100, Jens Axel Søgaard wrote: Hi All, I got a contract when I tried to build racket. Any ideas? The main error is below. Entire log is here:

Re: [racket-dev] having zo files from two versions

2015-01-06 Thread Matthew Flatt
At Tue, 06 Jan 2015 14:14:22 -0500, Neil Van Dyke wrote: Dan Liebgold wrote on 01/06/2015 02:00 PM: What is a straightforward way to designate the compiled directory to look for zo files in that can be based on the Racket version? I'd like to have Racket 5.2.1 and 6.1 running in parallel

Re: [racket-dev] having zo files from two versions

2015-01-06 Thread Matthew Flatt
) in the release notes. At Tue, 6 Jan 2015 11:46:11 -0800, Dan Liebgold wrote: That method isn't available in 5.2.1, unfortunately. Oh, and wishlist item: the reference docs specify the version the function was introduced in. On Tue, Jan 6, 2015 at 11:39 AM, Matthew Flatt mfl...@cs.utah.edu wrote: You

Re: [racket-dev] having zo files from two versions

2015-01-06 Thread Matthew Flatt
You probably want to set `current-compiled-file-roots`, which can be initialized by the `PLTCOMPILEDROOTS` environment variable, instead. At Tue, 6 Jan 2015 11:27:35 -0800, Dan Liebgold wrote: Hmmm... so this should be as easy to implement as: (use-compiled-file-paths (list (build-path

Re: [racket-dev] internal error during gc

2014-12-30 Thread Matthew Flatt
I think the root of the problem is that `raco setup` gets anywhere close to the 1 GB limit. Also, since the images.scrbl document involves images, the problem may be related to using foreign libraries when close to the memory limit (where the foreign library can't force a Racket GC to recover from

Re: [racket-dev] support for arm64 / aarch64

2014-12-29 Thread Matthew Flatt
It looks like this patch was submitted for v6.1. Version 6.1.1 (the current release), uses SGC instead of Boehm's GC during the build process by default. So, it at least avoids this immediate problem. I can't think of any other problem that would turn up in v6.1.1, but I'm not sure it will work.

Re: [racket-dev] collects search order

2014-12-12 Thread Matthew Flatt
At Thu, 11 Dec 2014 17:00:14 -0800, Dan Liebgold wrote: If I use the -X and -S command line parameters to Racket to make my local collects dir the first one searched, it makes it so I can't do (require srfi/1). Yes, this is subtle and confusing. Is there something special about the srfi

Re: [racket-dev] Multiple 'raco make' processes

2014-12-09 Thread Matthew Flatt
Unfortunately, the bytecode compiler is not completely deterministic. Generating the same .zo file from the same source is likely to produce different bytes each time. The root causes are various counters and hash orders, and I hope to fix that eventually. For now, since the generated bytecode is

Re: [racket-dev] Multiple 'raco make' processes

2014-12-09 Thread Matthew Flatt
). Robby On Tue, Dec 9, 2014 at 6:22 PM, Jay McCarthy jay.mccar...@gmail.com wrote: Specifically, you can get errors like Called export 72 and expected set-list but got list-set. Chaos! Jay On Tue, Dec 9, 2014 at 3:09 PM, Matthew Flatt mfl...@cs.utah.edu wrote: Unfortunately

Re: [racket-dev] The repository is now split

2014-12-06 Thread Matthew Flatt
At Fri, 5 Dec 2014 14:04:47 -0800, John Clements wrote: 1) compilation failed because it couldn't find the 'racket' collection, but I noticed that it was referring to a nonexistent path, presumably because I had moved the root of the installation. Has that always been a bad idea? Ok, yes, it

Re: [racket-dev] The repository is now split

2014-12-05 Thread Matthew Flatt
Can you run `raco pkg show`? It looks like `raco pkg install` thinks you have main-distribution and main-distribution-test installed already. At Fri, 5 Dec 2014 14:04:47 -0800, John Clements wrote: Urg... more interesting problems. I pulled and tried to rebuild, and things went pear-shaped.

Re: [racket-dev] The repository is now split

2014-12-05 Thread Matthew Flatt
the build of minimal Racket. I think that aspect of the makefile should change. Meanwhile, I'm not clear on why moving your directory caused the package system to lose track of at-exp-lib, and I'll look into that further. At Fri, 5 Dec 2014 15:22:03 -0700, Matthew Flatt wrote: Can you run `raco pkg

Re: [racket-dev] The repository is now split

2014-12-05 Thread Matthew Flatt
(modern, lots of memory, desktop) machine. It gets stuck around search.scrbl, as Vincent mentioned on IRC (but eventually finishes). I just grabbed a fresh clone though and it compiled in normal time, so it has something to do with interrupted makes. On Fri, Dec 5, 2014 at 5:36 PM, Matthew Flatt

Re: [racket-dev] The repository is now split

2014-12-04 Thread Matthew Flatt
In cooperation with Sam, I've pushed a change to the way that `make` links the content of pkgs. If you run `make` again, it should tell you to delete your old racket/etc/config.rktd Also, the native-pkgs submodule is gone. The problem that John saw with libintl.8.dylib has been fixed by

Re: [racket-dev] new package system collections and conflicts

2014-11-30 Thread Matthew Flatt
We should change that example. It would indeed be strange for package named tic-tac-toe would introduce a `data/matrix` module, and the documentation really shouldn't suggest that it makes sense for a package to introduce overlaps that are not reasonably expected from the package name. There are

Re: [racket-dev] new package system and versions

2014-11-30 Thread Matthew Flatt
Although I object to some of your characterizations of the difference between PLaneT and the new package system, it's fair to say that PLaneT provides better support to package authors for creating new APIs that are intended to replace (but coexist with) old APIs. I think the answer to that

Re: [racket-dev] Splitting the Racket repository

2014-11-30 Thread Matthew Flatt
At Sat, 29 Nov 2014 22:00:44 -0500, Eli Barzilay wrote: On Sat, Nov 29, 2014 at 8:30 PM, Sam Tobin-Hochstadt sa...@cs.indiana.edu wrote: On Sat, Nov 29, 2014 at 8:16 PM, Eli Barzilay e...@barzilay.org wrote: On Sat, Nov 29, 2014 at 7:14 PM, Sam Tobin-Hochstadt sa...@cs.indiana.edu wrote:

Re: [racket-dev] Line editing in the default REPL

2014-11-25 Thread Matthew Flatt
Do you have in mind making xrepl intended to be part of Minimal Racket? If not, what's the mechanism for `racket` using xrepl when it's available? A similar question applies to libeditline. Currently, for Linux and other Unix platforms (not counting natipkg variants), our convention is that

Re: [racket-dev] DrRacket PF1 Search Bug?

2014-11-23 Thread Matthew Flatt
At Sat, 22 Nov 2014 14:16:32 -0500, Eli Barzilay wrote: On Fri, Nov 21, 2014 at 4:26 PM, Robby Findler ro...@eecs.northwestern.edu wrote: The two candidates are the trampoline approach and the just move the documentation files over into the user space as if a package had been installed.

Re: [racket-dev] Errors compiling on cygwin

2014-10-31 Thread Matthew Flatt
Yes, our Cygwin support has rotted in a variety of small but exotic ways. I'm in the process of fixing the problems. The enclosed patch applies to the development branch or the v6.1.1 release candidate, and it might work for you, but I'm still checking it. The fixed-up implementation will be

Re: [racket-dev] Understanding the performance of raco make

2014-10-28 Thread Matthew Flatt
I think you probably want to get information directly from `compiler/cm`, probably `compiler/cm` doesn't provide the right information right now, and probably some adjustments to `compiler/cm` could get you useful information through the logging API. Also, `parallel-compile-files` might need to

Re: [racket-dev] Release Announcement for v6.1.1

2014-10-27 Thread Matthew Flatt
At Mon, 27 Oct 2014 12:25:22 -0400, Ryan Culpepper wrote: mflatt: - optimizations (most from Gustavo Massaccesi) (82ffd405, 25c05d66, a7a912ee, 1f2f7a1d, d14b4a80, 769c5b6e, 35eb6562, 15423988) - add replace-evt (as suggested by Jan Dvořák) (bc69a9b0) - fixing letrec updates? (eg

Re: [racket-dev] crash running raco setup with racket 6.1

2014-10-23 Thread Matthew Flatt
I can confirm the crash with a Cairo 1.14 build on 64-bit Mac OS X. I've submitted a bug report for Cairo (Bug 85372). For the record, here's how I assembled the report: The crash happened for me when building the plot documentation. By successively pruning the document's source, I whittled the

Re: [racket-dev] Pre-Release Checklist for v6.1.1, Second Call

2014-10-23 Thread Matthew Flatt
Is it possible that you installed on top of an existing v6.0.900.900 installation (for the previous release's candidate)? The file share/pkgs/drracket/drracket/private/compiled/rectangle-intersect_rkt.zo existed in v6.0.900.900, but it does not exist in v6.1.0.900, because the library moved

Re: [racket-dev] Pre-Release Checklist for v6.1.1, Second Call

2014-10-23 Thread Matthew Flatt
. -- Matthias On Oct 23, 2014, at 2:26 PM, Matthew Flatt mfl...@cs.utah.edu wrote: Is it possible that you installed on top of an existing v6.0.900.900 installation (for the previous release's candidate)? The file share/pkgs/drracket/drracket/private/compiled/rectangle

Re: [racket-dev] Strange issue with identifier-binding being wrong for lexical variables

2014-10-22 Thread Matthew Flatt
I agree that this is broken, but I'd like to put it on hold, because its another basic problem with the way the current macro expander represents lexical context. Adjusting the context of the expressions changes the result, because its the macro-introduced nature of the `main` definition that

Re: [racket-dev] Strange issue with identifier-binding being wrong for lexical variables

2014-10-22 Thread Matthew Flatt
At Wed, 22 Oct 2014 10:25:51 -0400, Sam Tobin-Hochstadt wrote: On Wed, Oct 22, 2014 at 10:20 AM, Matthew Flatt mfl...@cs.utah.edu wrote: Expansions that produce this bad `identifier-binding` result probably happen up all the time. They don't bother the bytecode compiler, because

[racket-dev] package source as a Git repo

2014-10-18 Thread Matthew Flatt
The development version of the package manager now supports Git repository references using http[s]:// and sites other than GitHub. That is, a package source can have the form git://host/[...] for a host other than github.com, and a source can have one of the forms http://[...].git

Re: [racket-dev] advice on the 6.x build system.

2014-10-18 Thread Matthew Flatt
At Fri, 17 Oct 2014 17:56:51 +0200, David Bremner wrote: Matthew Flatt mfl...@cs.utah.edu writes: Meanwhile, I haven't answered your original question. Can you remind me of the specific steps that I'd need to follow to try the script that you sent before? With your indulgence, I'll

Re: [racket-dev] advice on the 6.x build system.

2014-10-17 Thread Matthew Flatt
At Fri, 17 Oct 2014 07:43:17 +0200, David Bremner wrote: Matthew Flatt mfl...@cs.utah.edu writes: That said, is there a particular reason that basing the build on the git repo would be better? One reason is that I need I need to track from release to release the files

Re: [racket-dev] Pre-Release Checklist for v6.1.1

2014-10-17 Thread Matthew Flatt
At Thu, 16 Oct 2014 09:13:54 -0400, Ryan Culpepper wrote: * Matthew Flatt mfl...@cs.utah.edu - Racket Tests - Languages Tests - GRacket Tests (Also check that `gracket -z' and `gracket-text' still works in Windows and Mac OS X) - mzc --exe tests - .plt-packing Tests

Re: [racket-dev] advice on the 6.x build system.

2014-10-16 Thread Matthew Flatt
Hi David, If I understand correctly, you're trying to base the build on a checkout of the Racket git repository. I think it's better to base it on a release source distribution, instead: * The source distribution embeds a reference to a release-specific package catalog, which effectively

Re: [racket-dev] Intermittent Segfault on DrDr

2014-10-02 Thread Matthew Flatt
I think that commit b946d4639e fixes this crash. It's nice of you to ask the day after the repair. :) I had spent a lot of time trying to replicate that crash, with no success, but yesterday was my lucky day. Claire ran a pessimization experiment on the bytecode compiler that made image.scrbl

Re: [racket-dev] Release for v6.1.1 is about to begin

2014-10-02 Thread Matthew Flatt
The latest should work. Please try a snapshot: http://pre.racket-lang.org/ At Thu, 2 Oct 2014 12:55:50 -0700, Nick Sivo wrote: Figured I'd wait until OS X Yosemite was closer to release before mentioning this, but DrRacket 6.1 doesn't run on it. Now that Yosemite has reached Release

Re: [racket-dev] Problem with planet and Windows shortcuts

2014-09-27 Thread Matthew Flatt
:48 +0100, Antonio Menezes Leitao wrote: Hi, On Thu, Sep 18, 2014 at 12:00 PM, Matthew Flatt mfl...@cs.utah.edu wrote: I think there must be a problem with v6.1's support for soft links on Windows, while previous versions of Racket were oblivious to links on Windows. What does

Re: [racket-dev] Problem with planet and Windows shortcuts

2014-09-18 Thread Matthew Flatt
I think there must be a problem with v6.1's support for soft links on Windows, while previous versions of Racket were oblivious to links on Windows. What does (resolve-path C:\\Users\\aml\\AppData\\Roaming\\Racket) report? At Wed, 17 Sep 2014 17:31:55 +0100, Antonio Menezes Leitao wrote: Hi,

Re: [racket-dev] GNU lightning version

2014-09-05 Thread Matthew Flatt
At Wed, 03 Sep 2014 13:07:05 +0400, Yaroslav Tsarko wrote: are there any reasons why Racket currently uses very old version of GNU Lightning? According to sources, Racket 6.1 uses GNU Lightning version 1.2 which originates from 2004 [...] Is it manpower problems (there is nobody who can

Re: [racket-dev] BUG: busy-waiting

2014-09-04 Thread Matthew Flatt
-peek` just return the appropriate `peek-bytes-evt` when `count` is nonzero? Marc On Thu, Sep 04, 2014 at 05:49:17AM +0200, Matthew Flatt wrote: Can you provide an example? Here's what I tried, but it blocks without busy-waiting: #lang

Re: [racket-dev] BUG: busy-waiting

2014-09-03 Thread Matthew Flatt
Can you provide an example? Here's what I tried, but it blocks without busy-waiting: #lang racket (require file/gunzip file/gzip) (define dest (open-output-bytes)) (deflate (open-input-bytes #hello) dest) (define bstr (get-output-bytes dest))

Re: [racket-dev] variable wrong procedure or structure-type shape error?

2014-08-30 Thread Matthew Flatt
Just for the record, this is my fault for not incrementing the version with a change to the compiler's optimizer. I thought of the optimization as local and having no effect on a module's interface to other modules. There's no such thing, though, since optimizer-inferred properties of a

Re: [racket-dev] [racket] Performance. Higher-order function

2014-08-28 Thread Matthew Flatt
? Vincent At Wed, 27 Aug 2014 08:46:02 -0600, Matthew Flatt wrote: The Racket snapshots at http://www.cs.utah.edu/plt/snapshots/ now include the Optimization Coach package. At Tue, 12 Aug 2014 18:32:05 +0100, Matthew Flatt wrote: Our build system can create

Re: [racket-dev] [racket] Performance. Higher-order function

2014-08-27 Thread Matthew Flatt
The Racket snapshots at http://www.cs.utah.edu/plt/snapshots/ now include the Optimization Coach package. At Tue, 12 Aug 2014 18:32:05 +0100, Matthew Flatt wrote: Our build system can create a distribution from any set of packages, and so we can easily switch over one of the snapshots to use

Re: [racket-dev] internal-definition-context-seal doesn't seem to do anything

2014-08-15 Thread Matthew Flatt
If you put the code below in a module, you don't get an error, because the syntax object that has the unsealed context doesn't appear in the fully-expanded module. The syntax object is in a local macro binding that disappears. If you remove the `let' around (bind h (define q 5)) (define q 8)

Re: [racket-dev] SGC as default

2014-08-13 Thread Matthew Flatt
-Hochstadt wrote: How difficult would it be to allow the bootstrap process to use a preexisting Racket installation? This would alleviate some of the performance loss, for example in rebuilds by developers or in continuous integration. Sam On Aug 11, 2014 11:16 PM, Matthew Flatt mfl

Re: [racket-dev] SGC as default

2014-08-12 Thread Matthew Flatt
, 12 Aug 2014 02:00:04 -0400, Asumu Takikawa wrote: On 2014-08-12 06:06:51 +0100, Matthew Flatt wrote: What platform are you using? I imagine that running `./racketcgc` within the racket subdirectory of your build directory will similarly crash. Can you get any information from running

Re: [racket-dev] SGC as default

2014-08-12 Thread Matthew Flatt
The gcc 4.9 release notes warn about this optimization: https://gcc.gnu.org/gcc-4.9/porting_to.html I'm surprised that this change hasn't caused more trouble for us. At Tue, 12 Aug 2014 08:39:01 +0100, Matthew Flatt wrote: Apparently, when gcc 4.9.1 sees memcpy(x, y, n); if (y

Re: [racket-dev] SGC as default

2014-08-12 Thread Matthew Flatt
it be to allow the bootstrap process to use a preexisting Racket installation? This would alleviate some of the performance loss, for example in rebuilds by developers or in continuous integration. Sam On Aug 11, 2014 11:16 PM, Matthew Flatt mfl...@cs.utah.edu wrote: I've changed the Racket

Re: [racket-dev] [racket] Performance. Higher-order function

2014-08-12 Thread Matthew Flatt
We discussed the possibility git submodules last year, and I think the consensus was that it wouldn't work well. We did attach the native-library repo (for Mac OS X and Windows) as a submodule to the main Racket repo, and that worked well enough, but I think it has worked only because the

[racket-dev] SGC as default

2014-08-11 Thread Matthew Flatt
I've changed the Racket CGC implementation --- which is mostly used only to build the normal Racket variant --- to use SGC by default, instead of the Boehm GC. The intent of the switch is to make the more portable GC the default. If you have an existing build in a repo checkout, then `make` is

Re: [racket-dev] SGC as default

2014-08-11 Thread Matthew Flatt
At Tue, 12 Aug 2014 00:43:04 -0400, Asumu Takikawa wrote: On 2014-08-12 05:16:21 +0100, Matthew Flatt wrote: If you have an existing build in a repo checkout, then `make` is likely to fail, because the makefile dependencies are not precise enough to deal with the switch. You can discard

Re: [racket-dev] Release Announcement for v6.1

2014-07-29 Thread Matthew Flatt
At Mon, 28 Jul 2014 14:33:07 -0400, Ryan Culpepper wrote: mflatt: - ARM JIT: fix software floating-point (ffb0dd52) - add plumbers (d5b42f8c) - raco make: improve parallelism (9e3b9844) - deprecate 3-arg module name resolver calls (8aaa3fc5) - win32: support symbolic links (3e3cb716,

Re: [racket-dev] Release Announcement for v6.1

2014-07-29 Thread Matthew Flatt
At Tue, 29 Jul 2014 06:31:21 -0700, Sam Tobin-Hochstadt wrote: Plumbers look like a fundamental new runtime system concept, and so I think we should mention them, even though most people won't use them. At Tue, 29 Jul 2014 13:47:58 -0400, Matthias Felleisen wrote: +1 on plumbers, if only for

Re: [racket-dev] Unable to expand cross-phase persistent module

2014-07-29 Thread Matthew Flatt
Sorry that I lost track of this one. I've pushed a repair. At Tue, 29 Jul 2014 16:26:21 -0700, Sam Tobin-Hochstadt wrote: Here's a simpler version of this problem: #lang racket (parameterize ([current-namespace (make-base-namespace)]) (expand (datum-syntax #f

Re: [racket-dev] strange top-level binding for module-defined identifiers

2014-07-25 Thread Matthew Flatt
I'll push a repair. The problem is in the representation of syntax objects and the flaky way that it was generalized to support identifiers that move across submodule boundaries (but the problem didn't just affect programs with submodules, in this case). At Thu, 24 Jul 2014 16:24:42 -0400, Sam

Re: [racket-dev] A tricky chaperone puzzle

2014-07-25 Thread Matthew Flatt
Unless I still have it wrong, the implementation of 2 was straightforward. I would have overlooked the need to restrict `chaperone-struct` to chaperones of accessors and mutators if you hadn't mentioned it. At Thu, 24 Jul 2014 15:45:18 -0400, Sam Tobin-Hochstadt wrote: Consider the following

Re: [racket-dev] A tricky chaperone puzzle

2014-07-24 Thread Matthew Flatt
Nice example. Offhand, I think that #2 is right, but I'll have to look at it more to be sure. At Thu, 24 Jul 2014 15:45:18 -0400, Sam Tobin-Hochstadt wrote: Consider the following module: (module m racket (struct x [a]) (define v1 (x 'secret)) (define v2 (x 'public)) (provide v1

Re: [racket-dev] Help with build failed error message

2014-07-20 Thread Matthew Flatt
Killed means that the OS terminated the `racket/racket3m` process from the outside. For example, the process may have exceeded a memory-use limit. At Sat, 19 Jul 2014 20:25:24 -0400, Alexander D. Knauth wrote: I made a fork of the racket repo and committed some changes in a topic branch, but

Re: [racket-dev] flatten-begin

2014-07-20 Thread Matthew Flatt
At Fri, 18 Jul 2014 09:52:26 -0500, Robby Findler wrote: Unless someone knows why it is a bad idea, how about adding a #:all? argument that flattens all the way down? I don't see many uses of flatten-begin in our tree, but the one in compatibility/package sure looks like it could use the

Re: [racket-dev] Pre-Release Checklist for v6.1

2014-07-18 Thread Matthew Flatt
At Thu, 17 Jul 2014 20:03:12 -0400, Ryan Culpepper wrote: * Matthew Flatt mfl...@cs.utah.edu - Racket Tests - Languages Tests - GRacket Tests (Also check that `gracket -z' and `gracket-text' still works in Windows and Mac OS X) - mzc --exe tests - .plt-packing Tests

Re: [racket-dev] src-id in identifier-binding for same-module definitions

2014-07-17 Thread Matthew Flatt
. Clearly this is possible, since Racket manages, but is there a way that I can do it? Sam On Wed, Jul 16, 2014 at 7:55 AM, Matthew Flatt mfl...@cs.utah.edu wrote: Yes, it can be .2, etc. The numbers are generated as needed to create distinct names --- deterministically for a given module

Re: [racket-dev] src-id in identifier-binding for same-module definitions

2014-07-16 Thread Matthew Flatt
That `posn1.1` is a unreadable symbol that stands for the symbol `posn1` plus some marks that distinguish it. In other words, `posn1.1` bridges (in an ugly way) the symbol-based world of module environments and the identifier-based world of syntax. In the future, I hope to shift module

Re: [racket-dev] request: replace-evt

2014-07-15 Thread Matthew Flatt
Added! At Tue, 8 Jul 2014 05:36:55 +0100, Matthew Flatt wrote: Hi Jan, That's a nice idea. Something similar --- but in a restricted form --- is used internally to implement various primitive events. I think I see how to generalize it to work with more arbitrary events and non-atomic

Re: [racket-dev] Questions about the GC code

2014-07-14 Thread Matthew Flatt
The gc directory is Boehm's GC. We've modified it a little (grep for PLTSCHEME), but we try not to maintain the GC itself, except to upgrade every once in a while. See http://www.hboehm.info/gc/ for the latest version, the mailing list, etc. I should look again at making Racket work with a

Re: [racket-dev] current packages' docs, errors, and conflicts

2014-07-10 Thread Matthew Flatt
Yes, `raco setup` with no arguments would succeeded and should fix things up at this point. When you use `raco pkg update`, it effectively passes the `--tidy` flag to `raco setup`. That is, `raco setup --tidy rackjure` would avoid the problem, and it should also fix things up at this point. It's

[racket-dev] current packages' docs, errors, and conflicts

2014-07-08 Thread Matthew Flatt
I've been working on a service that builds all packages listed at pkgs.racket-lang.org. The idea is to run builds regularly (at least once a day) and link to documentation and build-status information from pkgs.racket-lang.org. Here's a table showing the current results for each package:

Re: [racket-dev] current packages' docs, errors, and conflicts

2014-07-08 Thread Matthew Flatt
At Tue, 08 Jul 2014 14:08:27 +0200, Jan Dvořák wrote: On Tue, 2014-07-08 at 12:46 +0100, Matthew Flatt wrote: The rightmost column of the table may need some explanation. The column highlights conflicts among names of package-installed executables, foreign libraries, and documents

Re: [racket-dev] current packages' docs, errors, and conflicts

2014-07-08 Thread Matthew Flatt
At Tue, 8 Jul 2014 11:49:49 -0400, Sam Tobin-Hochstadt wrote: On Tue, Jul 8, 2014 at 11:35 AM, Matthew Flatt mfl...@cs.utah.edu wrote: At Tue, 8 Jul 2014 10:15:10 -0400, Sam Tobin-Hochstadt wrote: - I think we need to support planet packages -- there are some people still releasing new

Re: [racket-dev] request: replace-evt

2014-07-07 Thread Matthew Flatt
Hi Jan, That's a nice idea. Something similar --- but in a restricted form --- is used internally to implement various primitive events. I think I see how to generalize it to work with more arbitrary events and non-atomic replace functions. There could easily be a catch that I'm overlooking, but

Re: [racket-dev] Compile racket without native compare-and-swap support?

2014-07-03 Thread Matthew Flatt
(almost always) and x86 doesn't have this problem. On 04/30/14 15:49, Juan Francisco Cantero Hurtado wrote: On 04/30/14 02:07, Matthew Flatt wrote: It's been a very long time since I touched a machine where the stack grows up. Does changing `c-cont-buf.stack_size` to `c-stack_size

[racket-dev] help wanted: watch out for missing `@history[...]`

2014-06-30 Thread Matthew Flatt
Recall that we added `@history[...]` to `scribble/manual` so we can document the addition of new modules, bindings, arguments, command-line flags, etc. It's easy to forget to add a note, and we have no good way of checking that `@history[]` notes have been added where needed. On the plus side, I

Re: [racket-dev] Racket peephole opt in lieu of TR's generalized ListDots to usefully type hash

2014-06-29 Thread Matthew Flatt
How about `(hash-set #hash() k v)`? (I probably should have been more careful in defining `hash` to allow it to return a constant when given 0 arguments.) At Sat, 28 Jun 2014 09:56:05 -0400 (EDT), J. Ian Johnson wrote: I depend highly on creating singleton hashes in my program (one key maps). I

Re: [racket-dev] [plt] Push #28945: master branch updated

2014-06-27 Thread Matthew Flatt
I will push a repair for that soon. Just to clarify a little, `--pdf` files generated on Robby's machine look fine in Preview on my machine, and `--pdf` files generated on my machine look bad in Preview on Robby's machine. The machine dependence is in how the output is viewed, and not what is

Re: [racket-dev] [plt] Push #28945: master branch updated

2014-06-27 Thread Matthew Flatt
At Fri, 27 Jun 2014 11:56:39 -0400, Sam Tobin-Hochstadt wrote: On Fri, Jun 27, 2014 at 11:45 AM, Matthew Flatt mfl...@cs.utah.edu wrote: For some reason, the way that PDF fragments are pulled in by `pdflatex` makes the fragments look worse in some PDF viewers/machines than the way that PS

Re: [racket-dev] [plt] Push #28945: master branch updated

2014-06-27 Thread Matthew Flatt
At Fri, 27 Jun 2014 13:43:46 -0400, Sam Tobin-Hochstadt wrote: On Fri, Jun 27, 2014 at 12:30 PM, Matthew Flatt mfl...@cs.utah.edu wrote: At Fri, 27 Jun 2014 11:56:39 -0400, Sam Tobin-Hochstadt wrote: On Fri, Jun 27, 2014 at 11:45 AM, Matthew Flatt mfl...@cs.utah.edu wrote: For some reason

Re: [racket-dev] Scribble code for table with fixed-width columns?

2014-06-23 Thread Matthew Flatt
At Mon, 23 Jun 2014 03:59:38 -0400, Kathi Fisler wrote: I need to create a table/tabular in which each column has a different fixed width. In latex, I would write {p{1in} | p{2in}} in the column specification. Anyone have a sample of scribble code that does this? The enclosed example works

Re: [racket-dev] [plt] Push #28919: master branch updated

2014-06-23 Thread Matthew Flatt
At Mon, 23 Jun 2014 10:45:44 -0400, Sam Tobin-Hochstadt wrote: On Mon, Jun 23, 2014 at 8:29 AM, mfl...@racket-lang.org wrote: 6a5a303 Matthew Flatt mfl...@racket-lang.org 2014-06-23 13:23:47 +0100 : | avoid getting stuck on non-UTF-8 symbol encodings in bytecode | Does this fix

Re: [racket-dev] Scribble code for table with fixed-width columns?

2014-06-23 Thread Matthew Flatt
as between each pair of consecutive lines? Assume this is a style of some sort (I should be all set after that). Kathi On Mon, Jun 23, 2014 at 6:31 AM, Matthew Flatt mfl...@cs.utah.edu wrote: At Mon, 23 Jun 2014 03:59:38 -0400, Kathi Fisler wrote: I need to create a table/tabular

Re: [racket-dev] fresh install ends in

2014-06-10 Thread Matthew Flatt
I've pushed a repair. At Tue, 10 Jun 2014 13:04:30 -0400, Matthias Felleisen wrote: raco setup: package declares no dependencies: txexpr raco setup: package declares no dependencies: sugar hash-ref: no value found for key key: racket context...:

Re: [racket-dev] JIT buffer overflow

2014-05-30 Thread Matthew Flatt
My guess is that this is related to a transition from 32-bit branches to 64-bit branches in JIT-generated code, which happens onx x86_64 when enough code has been JITted to span an address range larger than 2^31 (and that's likely to happen late in a build when using 7 places). I haven't been able

Re: [racket-dev] Connection issue with the Infogroep mirror

2014-05-28 Thread Matthew Flatt
Yes. Please use rsync from mirror.racket-lang.org instead of download.racket-lang.org. We moved download.racket-lang.org to an S3-hosted site, while mirror.racket-lang.org refers to the machine that download.racket-lang.org refers to. In other words, we had to split names to distinguish between

Re: [racket-dev] [plt] Push #28817: master branch updated

2014-05-28 Thread Matthew Flatt
Ok, I see. I'll revise my comment to this would be better done with a more general form of type inference, leaving out the claim of where that inference should live. I don't currently know how to do it other than building inference into the complier. Matthias's plug-in rules sounds like a point

Re: [racket-dev] Racket 6.0.1 make install-both fails: Racket virtual machine has run out of memory; aborting

2014-05-16 Thread Matthew Flatt
At Thu, 15 May 2014 18:34:20 -0400, Neil Van Dyke wrote: FYI, a 6.0.1 install from source failed. I can't spend any time on it right now. System: 32-bit x86 dual-core, Debian Squeeze, no virtualization, no swap, 3 GB RAM total, almost 2 GB RAM free. $ ./configure

Re: [racket-dev] Determining if a resolved module path is a real module name

2014-05-16 Thread Matthew Flatt
The result of `expand` does not keep track of it source. You may want to use `resolve-module-path-index` from `syntax/modresolve`, providing the original module path as the second argument. The `resolve-module-path-index` function detects the self module path index (which is giving you '|expanded

  1   2   3   4   5   6   7   8   9   10   >