Commit Graph

3693 Commits

Author SHA1 Message Date
Matthew Flatt
a0378d956a fix place refcount
Originally, the refcount was either 0, 1, or 2, so a `char' was
enough. It's not enough now that place channels increment the
refcount.
2011-10-03 06:39:18 -06:00
Robby Findler
57042de4da add a test case that ensures that the default values of optional arguments
are not subject to the argument on the contract
2011-10-01 16:03:28 -05:00
Kevin Tew
e650764a4c place-channel? returns #t for place descriptors, doc clarification 2011-09-30 17:15:11 -06:00
Sam Tobin-Hochstadt
88c7bf649c Parallel version of k-nucleotide.
2x faster on very big inputs, slower on small inputs.
2011-09-30 11:42:58 -04:00
Ryan Culpepper
1c6b8bd68e syntax/parse: lazily load most macro transformers and compile-time support 2011-09-30 04:13:09 -06:00
Matthew Flatt
99fe14b080 fix problems with phase-1 syntax definitions
Closes PR 12234
2011-09-29 16:54:08 -06:00
Matthew Flatt
a857e9e041 fix JIT bug in `fl->fx'
For the case that the argument is unboxed.

Closes PR 12240
2011-09-29 16:54:08 -06:00
Sam Tobin-Hochstadt
d279593c15 Parallel spectral-norm shootout benchmark. 2011-09-29 17:51:00 -04:00
Sam Tobin-Hochstadt
2d3a713f0d More shootout optimization. 2011-09-29 17:51:00 -04:00
Robby Findler
2c018a749c PR 5440 requests that the 'electric' > in XML boxes work properly in
this situation:

   <a x="<b

and, in particular, not do this:

   <a x="<b></b>

Looking into this a bit, it isnt' clear how to do this without actually
parsing the whole buffer, something that doesn't seem to be worth
the effort with the amount of use that the XML boxes seem to get

So, for now: closes PR 5440
2011-09-29 12:03:58 -05:00
Matthew Flatt
ac8990d519 add date*' and exn:fail:syntax:unbound'
The `date*' structure type is an extension of `date' with
`nanosecond' and `time-zone-name' fields.

The `seconds->date' function now accepts a real and returns a
`date*'. The fractional part of its argument goes into the
`nanosecond' field.
2011-09-29 09:22:10 -06:00
Robby Findler
1c630063c5 remove debugging edit 2011-09-28 19:56:37 -05:00
Robby Findler
c8cbe81e51 fix problems with the autosave recovery gui and add a drdr test for it 2011-09-28 17:06:30 -05:00
Matthew Flatt
2ae6d0c55f fix expand of `#%variable-reference' on local variable
Closes PR 12231
2011-09-27 18:53:28 -06:00
Matthew Flatt
ec49225112 fix expand-imports' for renamed quote'
Closes PR 12235

Thanks to Carl for the report and test case
2011-09-27 17:45:18 -06:00
Robby Findler
0baa32bcf8 fix the way that the set of identifiers to rename is calculated so that
macros that do strange things like the one below are treated better

(define-syntax-rule (m q)
  (begin (lambda (q) q)
         (define q 1)))
(m x)
x
2011-09-26 13:00:23 -05:00
Robby Findler
ae34e1a960 fix a race (suggested by drdr test results) 2011-09-26 06:08:58 -05:00
Matthew Flatt
e226dd7e26 add `contract-out' 2011-09-24 22:30:56 +09:00
Robby Findler
abda257295 moved the 'send to repl' keystrokes to the manual (and added a test
suite to make sure the example code in the manual doesn't get stale)
2011-09-23 16:37:18 -05:00
Vincent St-Amour
ef2acecb96 Forbid non-productive recursive types. 2011-09-23 14:40:17 -04:00
Sam Tobin-Hochstadt
a55e86d93b Initial parallel versions of Shootout benchmarks. 2011-09-22 15:48:22 -04:00
Ryan Culpepper
7cc1476170 syntax/parse: fix bug: integrated stxclass might not bind pvar to syntax 2011-09-21 16:58:52 -06:00
Robby Findler
d654d3e09b add the place creation memory use to the memory-log test
(this required rearranging a bunch of local-member-names)
2011-09-20 17:15:02 -05:00
Robby Findler
5ce47fe988 adjust a syncheck test so hopefully to avoid mutating datastructures from the wrong thread 2011-09-20 17:14:57 -05:00
Matthew Flatt
0ab6637539 remove obsolete and unused Racket-to-C compiler
Removes `raco ctool -e/-c', `mzc -e/-c', `compile-extensions',
`compile-extensions-to-c', `compile-c-extensions', `compiler/cffi',
`compiler/comp-unit', `compiler:inner^', and most options in
`compiler/option'.
2011-09-20 15:26:39 -06:00
Ryan Culpepper
2111f136aa updated macro-debugger tests 2011-09-20 14:49:50 -06:00
Ryan Culpepper
43d3b5d8bc rackunit: added #:wait? arg to test/gui 2011-09-20 14:49:49 -06:00
Matthew Flatt
0197902309 add var-ref->mod-decl-insp' and switch cur-code-insp' uses
Macros and other tools that need syntax privilege used
`(current-code-inspector)' at the module top-level to try to
capture the right code inspector at load time. It's more
consistent to instead use the enclosing module's declaration-time
inspector, and `var-ref->mod-decl-insp' provides that. The
new function works only on references to anonymous variables,
which limits access to the inspector.

The real function name is longer, of course.
2011-09-20 13:50:36 -06:00
Matthew Flatt
a7c607a708 fix module expand bug 2011-09-20 09:48:48 -06:00
Matthew Flatt
5351d4c7b9 fix gc and stack-overflow problems in JIT, module expansion & run
The GC problem was related to generational GC and the way constant
values are associated to JIT-generated code. See `retaining_data'.

The stack-overflow problems affects the JIT, module expansion,
and module invocation.
2011-09-20 08:34:29 -06:00
Matthew Flatt
f280fb14b4 places: doc repair, refine error checking, fix a test 2011-09-17 07:29:07 -06:00
Matthew Flatt
48fdcdd65d fix a path test for windows 2011-09-17 07:29:07 -06:00
Matthew Flatt
376efea754 doc clarifications and tests for some file-locking corners 2011-09-17 07:29:07 -06:00
Matthew Flatt
33831cbd8a add test to run test suite in multiple places
This is something we've done in the past, but it doesn't seem
to be in the tree anywhere.

Also, repair old "parallel.rktl" test.
2011-09-16 16:19:04 -06:00
Eric Dobson
7fcf28bef2 Gave subprocess and similar functions more precise types. 2011-09-16 17:20:31 -04:00
Kevin Tew
a605a97132 place* throw error on closed port 2011-09-16 13:24:39 -06:00
Robby Findler
443434fd01 adjust hangman test suite strategy; instead of waiting for a hangman frame to get teh focus,
instead wait for a frame in the user's eventspace that has the name "Hangman".

also, some minor rackety
2011-09-16 12:24:39 -05:00
Eli Barzilay
c5b3317daf Make `enter!' go into a module even if there was an error when it was instantiated.
Previously, when trying to `enter!' into a module, an exception would
abort the whole thing, leaving the repl where it was.  This behavior can
be very confusing:

  > (module foo racket/base (define x 123) (error "bleh!"))
  > (enter! 'foo)
  bleh!
  > x
  reference to undefined identifier: x
  > (enter! 'foo)
  > x
  123

Things are a little better with xrepl, since the prompt always indicates
the module that you're in.  Still, it's unfortunate that a module with
an error is more likely to be something you'd want to debug -- and most
people are likely to miss the fact that entering a second time will work.

So make `enter!' catch exceptions when requiring the module, change the
namespace, and then re-raise the exception so the user sees it and is
left in the expected namespace.
2011-09-16 11:31:41 -04:00
Eli Barzilay
f02d19553c Protect against bad values in `current-module-declare-name'.
Closes PR 12125
2011-09-16 10:48:18 -04:00
Eli Barzilay
370678abf6 Avoid compiling wxme test files.
Since that requires `racket/draw', which requires libcairo, which is
missing on some build machines.  It might be needed in the future, but
for now it's better to make it easier to add build machines.
2011-09-16 10:48:18 -04:00
Eli Barzilay
623c7493ed Some selective #:when (not ...)' -> #:unless ...'. 2011-09-16 10:48:18 -04:00
Eli Barzilay
26857abe43 Preserve thread values.
This avoid problems with tests that are broken by changing environment,
like the TR tests that implicitly rely on a specific printer.
2011-09-16 10:48:17 -04:00
Jon Rafkind
0b4e630b8c [honu] return currently parsed form if a macro is seen 2011-09-15 16:01:54 -06:00
Jon Rafkind
18b18aaded [honu] add string comparison. add test.xml file for linq example 2011-09-15 16:01:54 -06:00
Jon Rafkind
0790efd585 [honu] add order-by clause 2011-09-15 16:01:54 -06:00
Jon Rafkind
aaed60493a [honu] recognize linq literals 2011-09-15 16:01:53 -06:00
Kevin Tew
b6972a3b7f dynamic-place now pipes standard io to standard out and error much like system. 2011-09-15 14:53:58 -06:00
Matthew Flatt
039f9c10f3 fix calculation for hash code of a hash table 2011-09-15 14:23:44 -06:00
Matthew Flatt
051d677f0f place-channel fixes
Finalization for a place channel used a recursive, non-atomic
function, which meant that a thread switch could happen during
place-channel finalization, leaving the new thread with the
master GC and generally confused. (The random-message test
found the bug right away on my machine.)

We already have a non-recursive, non-atomic function to traverse
place messages, so collapse all modes into that one implementation.

Along the way, problems with empty structs (found by random tester)
and checking of file descriptors (test added) also fixed.
2011-09-14 20:43:36 -06:00
Mike Sperber
bbb38c0ff9 Report signature violations in the REPL.
In the course of this, revamp the logic that controls when the
test-results window pops up and when it doesn't.

Closes PR 12185
2011-09-14 22:00:42 +02:00