Commit Graph

4320 Commits

Author SHA1 Message Date
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
Vincent St-Amour
bfe6d41157 Avoid swallowing errors.
This hid the fact that error pruning was failing.

original commit: 6ffc3eb7b614e415845e471e49a22e193dba1076
2013-09-04 11:12:12 -04:00
Vincent St-Amour
5efbf50364 Fix type error message pruning for tc-any-results.
original commit: 1e82e5bd6228430fd60e68ff09a8b1615f978887
2013-09-04 11:12:12 -04:00
Vincent St-Amour
d2bafc4ef3 Refactoring.
original commit: 720a79975fc2f6036f1ac3c5de4507e70823c9ee
2013-09-04 11:12:12 -04:00
Asumu Takikawa
90ee9b7cf3 Adjust test for API coverage
Also Rackety

original commit: 9c48cfcaf66122f7a080fa6ca20e2e80b4f411d3
2013-09-03 22:30:01 -04:00
Asumu Takikawa
cfdb59469b Add type for dynamic-string-constants
original commit: 2070726769f5aecb9c9b930b9adc869896197e3b
2013-09-03 22:29:46 -04:00
Asumu Takikawa
8928539c33 Fix indentation
original commit: ddcb0318051c05363bafb9c5e960bd8c095cf74c
2013-09-03 21:11:25 -04:00
Asumu Takikawa
4f04f82380 Add type for this-language to fix test
(also add a type for `all-languages`)

original commit: 099ca6cab93b67220125f98efa7dc706f59f0c84
2013-09-03 21:10:12 -04:00
Robby Findler
0fb38d6ad4 clean up string-constants expansion and add dynamic-string-constant[s]
This saves about 200 bytes per use of (string-constant ...) in the .zo file.

Also, it now only requires a single string-constants file in phase 1
(instead of all 13) so that should be a savings of memory and time
when compiling .zos, too.

original commit: 2ac73eee39e1b98a1d3d83cd3ed566d578625e4f
2013-09-03 15:59:15 -05:00
Vincent St-Amour
2796aa5481 Biding -> Binding.
Closes PR13992.

original commit: 4453a4318c617857fcd0d1dddc75f573e0476c07
2013-09-03 11:31:35 -04:00