Commit Graph

3079 Commits

Author SHA1 Message Date
Matthew Flatt
1cbbe0d029 Typed Racket reference: use #:indirect to fix some docs
Also, use `#:no-declare` to fix some module declarations that are
all in the same section. (If bindings were defined in the modules, then
they'd need to be in different section, but the section titles could
be hidden to make them look like they're all in the same section.)

original commit: 39a0c3b492d46baed04e2205c0604cf8c4d4967b
2013-09-19 11:17:44 -05:00
Asumu Takikawa
deaf4861c2 Improve type->contract error messages
original commit: 0b78356be72274c07553047f5f95614e329617c3
2013-09-17 20:37:57 -04:00
Sam Tobin-Hochstadt
3c39fd0c95 Remove links to math and plot docs until we can do them correctly.
original commit: 627e1b4782f320310f6a38fccff3cad083125dbc
2013-09-17 08:38:54 -04:00
Robby Findler
1b30e4a1fc add missing dependency declarations
original commit: 36c623d93f693ec3312d01cb49b169e1da19a6ae
2013-09-17 03:38:08 -05:00
Asumu Takikawa
2b955ead7f Expand TR reference section on libraries
original commit: f5b82eb510c02bb512cc6a8c4dfcb7c16efe6657
2013-09-16 16:17:02 -04:00
Ryan Culpepper
a521f6aee2 extracted rackunit-gui package
original commit: 8512c365128064f3c1d3bdee768ce387cb358303
2013-09-15 13:49:35 -04:00
Robby Findler
1cb627e61a remove dependency from string-constants on compatibility-lib
original commit: 03f50815d7c2e9c905014924308fa3917f377d88
2013-09-13 12:04:51 -05:00
Eric Dobson
3ca5150122 Make unboxed let not double optimize. TODO fix logs.
original commit: 10dc9afc3371790ad479017e86fb770c442ede3b
2013-09-13 09:17:40 -07:00
Sam Tobin-Hochstadt
f35c297a1d Improve error messages for bad uses of :type etc.
original commit: 1a682c389a2751f37c1fcc5f7ef23a3a1167f7e9
2013-09-13 11:40:41 -04:00
Eric Dobson
0fdb87985c Cleanup float complex optimizations.
This changes might have bad changes, we should take a closer look at the
diffs.

original commit: a1759de5b6609b3fe3c3860638677ed7ba117b22
2013-09-12 20:20:00 -07:00
Asumu Takikawa
783d50d4a6 Allow user to write new pair filter objects
original commit: d88bea01477e4cb191fc28f9c50e6ecd80d5222f
2013-09-12 11:18:11 -04:00
Asumu Takikawa
ef78c1fa66 Use pairs for objects on arrow types
Previously, function types looked something like
    U_n|V_n
 S ---------> T   where n is a natural number representing
       ∅          a function argument by its index

They now look like
    U_(n,m)|V_(n,m)
 S -----------------> T   where the pair indicates the mth argument
           ∅              bound by a function n lambdas away

This allows the use of curried predicates in occurrence typing

original commit: 4c17c2091cfbf25a90b82256f43d4b46cbe868de
2013-09-12 11:18:11 -04:00
Asumu Takikawa
072d05791b Improve error checking for filter objects
original commit: 73050139340c0785c2dfc2cd14ee8e82c16ae4ed
2013-09-12 11:18:10 -04:00
Asumu Takikawa
6188a21d8a Parse identifier objects in filters
original commit: 7ff8d8d6b750edc258f622bafec3a80bd880b1d5
2013-09-12 11:18:10 -04:00
Eric Dobson
85f997b4c7 Make struct: form have the correct bindings in struct info.
Also fixes reexport of struct-type to typed modules.

Reexport issue.
Closes PR13160.

Constructor issue.
Closes PR13161.

Struct copy issues.
Closes PR 10765.
Closes PR 12513.
Closes PR 13149.

original commit: 9586dca0a339560d12777d22b624e6c9bd3f52e7
2013-09-12 00:02:48 -07:00
Eric Dobson
bcc606575c Document new known bugs.
original commit: 4a4c8418dc9428617fca3e2ed85e35332b557d9d
2013-09-11 22:52:02 -07:00
Eric Dobson
16432446eb Make more code use n-ary->binary.
original commit: 692d2ee7ffe6d3497a9a7767e546ca30f4d1063c
2013-09-11 22:30:49 -07:00
Eric Dobson
5dede9d084 Cleanup optimizer code.
original commit: 28b07e7a4518a43e390d815a2709123cfa7ca3b6
2013-09-11 22:30:49 -07:00
Eric Dobson
b9b8c9d67a Cleanup float optimizations.
original commit: 1f631a219f31b34192f9eaa184303df357ce58bd
2013-09-11 22:30:49 -07:00
Eric Dobson
2d6cb5a4a4 Cleanup fixnum optimizations.
original commit: 02f918107ef55721f000740ea3d373238bc1fcd9
2013-09-11 22:30:49 -07:00
Eric Dobson
9da8cc0eac Cleanup unboxed-let optimizations.
original commit: fc5369ecea92fefb295537c31f6e3bb87e973be6
2013-09-11 22:30:49 -07:00
Eric Dobson
4ed4737cf8 Cleanup vector optimizations.
original commit: 2ddcfbc1e4e396c2965c3edffaf37f9a2465c38d
2013-09-11 22:30:49 -07:00
Eric Dobson
57cdc95b1f Cleanup struct optimizations.
original commit: 9bafe3b674853788cd5d27e611b7b483ab12279b
2013-09-11 22:30:49 -07:00
Eric Dobson
58e7c1f024 Cleanup number optimizations.
original commit: 50ee4c75b285cd9a7b7254f9458661dddf883c30
2013-09-11 22:30:49 -07:00
Eric Dobson
f789607929 Cleanup hidden cost optimizations.
original commit: 64064f69d7accbc68e17593dddf3e2f8f79d92cb
2013-09-11 22:30:49 -07:00
Eric Dobson
a1163a700f Cleanup box optimizations.
original commit: 6c4ee2134804352dd1a8fd445c1e1a17915879f3
2013-09-11 22:30:48 -07:00
Eric Dobson
83f1db0f3b Cleanup string optimizations.
original commit: 010f9e1ef4345ef770dfdf8100e1385d468e1ae7
2013-09-11 22:30:48 -07:00
Eric Dobson
1ed75b095b Cleanup sequence optimizations.
original commit: 71516d0201baf68f8a97ae7a4e46fca3ccadca45
2013-09-11 22:30:48 -07:00
Eric Dobson
1e1c06c515 Cleanup list optimizations.
original commit: 4631705b16deb9e3c0561ba97d2f73b22cf86cce
2013-09-11 22:30:48 -07:00
Eric Dobson
c6cd43eeb9 New version of TR unit tests.
original commit: fbf4d6c88633e6f695286540f2e7d3d2cfc79531
2013-09-11 21:59:44 -07:00
Sam Tobin-Hochstadt
1873ecf918 Make use of more function type helpers in serialization.
original commit: 28b81183de8836d66a4f16a33355d2df90fb7326
2013-09-11 18:09:23 -04:00
Sam Tobin-Hochstadt
1819be0098 This list was pointless.
original commit: c87bec369ae2d4db0f1d2ba13d4d7f8c52bc081c
2013-09-11 18:09:07 -04:00
Sam Tobin-Hochstadt
862ceb8850 Declare a few more type values to avoid reconstructing.
original commit: ece6e9e15e866e9d62aa45300dc8d515d8ad8088
2013-09-11 18:08:35 -04:00
Sam Tobin-Hochstadt
faba3b4d8f Shrink serialized type representations more.
* Use helper functions to construct list types and simple function types.
  These are extremely common and their serialization is verbose.

* Split unions into numeric and non-numeric parts for serialization.
  Often numeric types have simple representations, and the union is
  polluted by one extra non-numeric type.

* Use the raw `sort` procedure to avoid keyword expansion
  NB: This doesn't affect zo size, only expanded code size.

Saves 300k on zo files in `math`.

original commit: 2a507c6881151541e367b0b6a159c086a0ecca7e
2013-09-11 15:17:08 -04:00
Sam Tobin-Hochstadt
7660c51532 Split struct function table into a separate file.
This substantially reduces the numer of files that depend
on `init-envs.rkt`.

original commit: 80018a99899e1210f535ec090e2380f20bacb890
2013-09-11 15:16:47 -04:00
Asumu Takikawa
36bca721ba Call out to sec. 5 in sec. 2
original commit: db9efa61aa1c669485535911f2dafee0795c66b3
2013-09-09 15:25:13 -04:00
Asumu Takikawa
0fa22e3600 TR doc typo fix
original commit: 41bf67ec76fe28da3a4b4362a3c93a10d86cb6cd
2013-09-09 15:24:16 -04:00
Asumu Takikawa
21f717beb4 Add a caveat about set!
original commit: 7bc208a7361058da28c84f5b28327c4408eb4418
2013-09-09 15:01:17 -04:00
Asumu Takikawa
c57dbac240 Fix typo
original commit: 08e13b031c9ce581aad7a3f38d2c5831abc140e4
2013-09-09 15:01:12 -04:00
Asumu Takikawa
c3f6913046 Add a TR Guide section on occurrence typing
original commit: 09559e43bde55f6029e08c947d4ec4c67d5af323
2013-09-09 14:25:03 -04:00
Asumu Takikawa
cb2673cc07 Fix TR unit tests
Was broken by d4963473adecf771a16f49120f00fd9296acc6ff

original commit: 672e90988096af4fabd84e9a63fa4b92272ed64b
2013-09-07 18:15:31 -04:00
Sam Tobin-Hochstadt
053ba8c20a Remove 'marshalled' field from Base type representation.
Now obsoleted by `predefined-type-table`.

original commit: d4963473adecf771a16f49120f00fd9296acc6ff
2013-09-06 19:22:17 -04:00
Sam Tobin-Hochstadt
a620d8c188 Remember types that are defined, and use them in serialization.
This extends a facility already available for base types,
making that facility no longer strictly needed.

Shrinks the zo size for the `math` package by almost 1MB.

original commit: 56b372ca4d0d35e3bed9a5777dd01b974329d032
2013-09-06 18:14:48 -04:00
Asumu Takikawa
8731a069e2 Refactor and add purpose statements
original commit: 2873ba700f463e5f395721620888a70daa63f402
2013-09-06 11:18:04 -04:00
Asumu Takikawa
c6f4590071 Fix indentation and re-arrange provides
original commit: 4b909ffd6a928d959f7d6b99fa4fc0b31cc02a8d
2013-09-06 11:18:04 -04:00
Asumu Takikawa
cb049b2710 Fix indentation
original commit: 372c2499c1d3312b27348bb7cd911c9e14250d8d
2013-09-06 11:18:04 -04:00
Asumu Takikawa
63bf4d67b6 Improve TR assertion error message
original commit: 3becf8492b4ee40a68bb8be9081cf64530a6a7f8
2013-09-05 22:46:58 -04:00
Eric Dobson
399bb7eccd Make pair-opt cleaner.
original commit: fe35cc096c59934461d89e5814c71e068d55ad94
2013-09-04 20:52:12 -07:00
Vincent St-Amour
2abdf27d17 Add tests for error message pruning.
original commit: 86c87f5fda227ec574a0e47d619155f96a2cf8a4
2013-09-04 14:01:41 -04:00
Vincent St-Amour
308fd29c06 Refactoring.
original commit: fef4b28b88a403c02d06f5a39552ea2616e831b6
2013-09-04 14:01:40 -04:00