Commit Graph

2312 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
c01b239779 Refactor struct type representation.
- fields now represented by fld struct.
 - mutability on per-field basis
 - accessors are per field

This fixes lots of existing bugs, allows future #:mutable on fields.
2010-06-29 17:33:36 -04:00
Jay McCarthy
e46dbe3db5 Fixing bug in formlet macro 2010-06-29 15:17:13 -06:00
Jay McCarthy
fc91321f21 Close connection sooner 2010-06-29 13:49:01 -06:00
Jay McCarthy
df30cda523 Port registry and changing benchmarks to not conflict on ports 2010-06-29 13:38:36 -06:00
Jay McCarthy
2e5c04f083 Nail down port and dont conflict 2010-06-29 13:23:23 -06:00
Jay McCarthy
0062a4eb23 Fixing tests, adding provide, clarifying names 2010-06-29 13:18:04 -06:00
Jay McCarthy
a6852d8f61 Adding FFI to Datalog 2010-06-29 11:09:07 -06:00
Jay McCarthy
b4cc683f08 Fixing output port 2010-06-28 19:58:18 -06:00
Matthew Flatt
47c7c1a27b JIT support for inexact->exact', add unsafe-fl->fx', etc. 2010-06-28 15:57:49 -06:00
Jay McCarthy
da7d4d4042 Adding datalog macro 2010-06-28 13:22:53 -06:00
Jay McCarthy
12797fef41 Using the datalog reader for racklog 2010-06-28 11:24:01 -06:00
Sam Tobin-Hochstadt
23553392df Rewrite typed common benchmark wrapper. 2010-06-28 12:12:32 -04:00
Sam Tobin-Hochstadt
e7c33c2244 Rewrite shootout benchmark wrapper.
- Now only needs one wrapper, conditions on module name
 - use with #lang s-exp
 - uses typed reader
2010-06-28 11:09:59 -04:00
Matthew Flatt
dc99e1992c restore support for sub-matches in `regexp-replace*' 2010-06-26 18:23:54 -06:00
Jay McCarthy
c48d1b58b4 Uses a more traditional read/expand/eval pipeline 2010-06-26 15:25:22 -06:00
Jay McCarthy
07142e2305 Use capitalized letters for variables in paren version 2010-06-26 13:17:10 -06:00
Jay McCarthy
0bda9efa96 Removing old sexp library and correct docs for warning 2010-06-25 22:36:13 -06:00
Jay McCarthy
e90de7196d Moving tests 2010-06-25 22:36:12 -06:00
Eli Barzilay
f5a0e6e0b8 Undo the racket/init symbolic form thing.
It needs to be (lib "racket/init") because that's the way that racket
uses the -I flag.  I think that I ran into this in the past, so drop in
a comment explaining this.

This reverts commit f58b58383f.
2010-06-25 16:05:58 -04:00
Vincent St-Amour
28acece484 Fixed Typed Scheme's optimizer's test harness to work with drdr. 2010-06-25 13:25:42 -04:00
Eli Barzilay
f58b58383f Adjust tests to requiring racket/init in symbolic form. 2010-06-25 11:01:05 -04:00
Vincent St-Amour
17f0d146f1 Adjusted benchmark sizes. 2010-06-25 11:00:25 -04:00
Vincent St-Amour
bc0d0a6e18 Unified the nbody-vec benchmarks so that they only differ by their use
of flonum or unsafe operations.
2010-06-25 11:00:25 -04:00
Vincent St-Amour
369ce44416 Made the default nbody benchmark unsafe. 2010-06-25 11:00:24 -04:00
Vincent St-Amour
a14c31a1de Changed dderiv to be closer to the untyped version. 2010-06-25 11:00:24 -04:00
Vincent St-Amour
b345d5f0f0 Typed Scheme now optimizes (fl)vector-length for all vectors and
vector-(ref,set!) for vectors of known length.
2010-06-25 11:00:24 -04:00
Vincent St-Amour
fd987546b3 Wrote a test harness and a couple of tests for Typed Scheme's optimizer. 2010-06-25 11:00:23 -04:00
Vincent St-Amour
8c8dbf0895 Fixes to some benchmarks due to the new fixnum types. 2010-06-25 11:00:23 -04:00
Vincent St-Amour
cea65c195b Fixed typed wrappers for the typed versions of mandelbrot. 2010-06-25 11:00:22 -04:00
Vincent St-Amour
a4236b0b3b Propagated Eli's bugfix to the typed version of binarytrees. 2010-06-25 11:00:22 -04:00
Sam Tobin-Hochstadt
4b1c62c978 Add Fixnum type. 2010-06-24 18:05:55 -04:00
Eli Barzilay
b46cb492bb Reorganize as function calls, to make it easier to customize. 2010-06-24 17:17:10 -04:00
Sam Tobin-Hochstadt
5b1118d514 More options for test runner. 2010-06-24 16:46:31 -04:00
Sam Tobin-Hochstadt
3c8952d63d Use the correct field numbers in substructs.
Maintain table of struct accessors/mutators.
2010-06-24 14:53:38 -04:00
Jay McCarthy
428412036f Fixing PR 10970 2010-06-23 16:29:23 -06:00
Eli Barzilay
3f36d054f6 Turn contracts on enqueue!' and dequeue!' into the usual error checks.
On a simple benchmark of:

  (let ([N 100000]
        [M 20]
        [q (make-queue)])
    (time (for ([i (in-range M)])
            (for ([i (in-range (* i N))]) (enqueue! q i))
            (unless (for/and ([i (in-range (* i N))]) (list i (dequeue! q)))
              (error "poof")))))

I get these timings:

  original version: cpu time: 24438 real time: 24439 gc time: 8164
  single-links:     cpu time: 17848 real time: 17849 gc time: 4859
  this version:     cpu time:  6519 real time:  6519 gc time: 3032

In addition, cleaned up the documentation a little, and mention the fact
that it is not thread safe.
2010-06-23 16:13:54 -04:00
Eli Barzilay
d986fed725 Uses a simpler single-linked list, about half of the meat code, and much
faster due to the removed overhead of dealing with the redundant
pointers.
2010-06-23 16:13:53 -04:00
Matthew Flatt
42c7b2b9d3 fix missed parts of the hash-table hahing bug 2010-06-23 07:09:59 -10:00
Matthew Flatt
bfd769a29c fix hashing of hash-table values
the order of keys+values in the table could affect the
 hash code, due to an interation with the depth-limiting
 counter
 Closes PR 10985
2010-06-23 07:00:29 -10:00
Eli Barzilay
0ffe4c1efb Revert "Adding XPM parser"
Not needed, since an XPM parser was already implemented.

This reverts commit 4d58a10ff4.
2010-06-23 07:34:40 -04:00
Eli Barzilay
e0c18c3a4b Remove the temporary file when done with it. 2010-06-23 07:34:39 -04:00
Eli Barzilay
acace4bc18 Fixes two bugs that I somehow missed completely.
(Also removed leftover `time'.)
2010-06-23 07:34:17 -04:00
Vincent St-Amour
ef1da61fd0 Added S-Expression diff to unstable. 2010-06-22 18:42:28 -04:00
Vincent St-Amour
d3c5ca7537 Propagated Eli's changes to the binarytrees benchmark to the typed
version.
2010-06-22 18:42:27 -04:00
Vincent St-Amour
7d1040283e Added support for unsafe struct operations to Typed Scheme. 2010-06-22 18:42:25 -04:00
Vincent St-Amour
c9383cffc2 Propagated Eli's changes to reversecomplement and fasta to the typed
versions.
2010-06-22 18:42:08 -04:00
Vincent St-Amour
4f501726fb Fixed a bug in the shootout harness. 2010-06-22 18:29:58 -04:00
Vincent St-Amour
bc794b443c Propagated Eli's changes to the mandelbrot benchmark to the generic
and typed versions.
2010-06-22 18:29:57 -04:00
Vincent St-Amour
5234809baf The moments benchmark now gets floats as input. 2010-06-22 18:29:56 -04:00
Vincent St-Amour
61545c4e75 Made make-vector's type more convenient. 2010-06-22 18:29:56 -04:00