Björn Lindqvist
2f835d3666
compiler.tree.propagation.*: implements downgrading to fixnum for the
...
mod word, maybe a first step in solving #224
factor_vm::primitive_bignum_mod is changed so that it outputs a fixnum
if the value is small enough. Then the compiler can take advantage of
knowing that expressions like [ >bignum 10 mod ] always result in a
fixnum [-9,9] and inline more arithmetic.
2015-06-27 16:14:58 +02:00
Björn Lindqvist
72fe466ac9
compiler.tree.propagation.known-words: more precise output class
...
assignment for all mod words
The compiler can better optimize a quotation like [ 20 fixnum-mod 55 + ]
if it knows fixnum-mod outputs a fixnum.
2015-06-27 16:14:57 +02:00
John Benediktsson
16abe47b03
compiler.tree.propagation: fix tests for bit? inlining.
2015-06-17 20:52:05 -07:00
Björn Lindqvist
f37ab939f0
compiler.*: more compiler docs
2015-06-14 16:44:37 +02:00
John Benediktsson
2c3492a916
minor cleanup to some docs.
2015-05-13 16:09:14 -07:00
John Benediktsson
b366a06c41
use reject instead of [ ... not ] filter.
2015-05-12 18:50:34 -07:00
Björn Lindqvist
0c2559ef6e
compiler.*: a bunch more compiler docs
2015-05-09 20:04:22 -07:00
Björn Lindqvist
8f02cad9c5
compiler.cfg.*: a bunch of new tests
2015-05-09 20:04:22 -07:00
Björn Lindqvist
c3ca8bd859
compiler.cfg.*: even more compiler docs
2015-04-29 09:31:58 -07:00
Björn Lindqvist
eda9535ce6
compiler.tree.propagation.call-effect: changing back call-effect-unsafe?, changing it made all images to large for some reason
2015-04-29 09:31:55 -07:00
Björn Lindqvist
837e098d41
compiler.cfg.*: a little more docs
2015-04-29 09:31:54 -07:00
Björn Lindqvist
09238cee4b
compiler.tree.propagation.call-effect: docs for this vocab
2015-04-29 09:31:54 -07:00
John Benediktsson
c65877104e
compiler: cleanup usings.
2014-12-13 16:10:21 -08:00
John Benediktsson
c0d6fdedd1
classes.tuple: use slots>tuple when possible.
2014-11-29 16:54:50 -08:00
Doug Coleman
7cfa9d9518
assocs: Make map-index-as support seq or assoc exemplars and move map-index, map-index-as to assocs because they need to use new-assoc. Make zip-index-as support assoc exemplars. Fix up docs and tests.
...
assocs.extras: Remove zip-as and move tests to assocs.
2014-11-08 18:18:00 -08:00
Doug Coleman
56f1b87a6f
basis, extra: Use zip-index.
2014-11-08 00:46:30 -08:00
John Benediktsson
b573c40402
compiler.tree: teaching it bignum>fixnum-strict.
2014-06-08 13:40:38 -07:00
John Benediktsson
57f9d78892
improve help by linking to types directly.
2014-05-23 20:20:15 -07:00
Björn Lindqvist
e2eebdec4d
Docs: mostly fixes for doc errors found by help lint
2014-05-10 17:13:49 -07:00
Björn Lindqvist
b11e912b44
Docs: initial docs for compiler.tree.propagation.* vocabs
2014-05-10 17:13:48 -07:00
John Benediktsson
9d3a654443
namespaces: removing make-assoc in favor of explicit get's.
2014-04-24 09:16:14 -07:00
John Benediktsson
b910ca090c
compiler.tree.propagation.transforms: previous H{ } and HS{ } optimization no longer necessary.
2014-01-08 09:56:08 -08:00
John Benediktsson
47a0ebcc99
compiler.tree.propagation.transforms: faster H{ } and HS{ } clone.
2013-11-25 16:42:59 -08:00
John Benediktsson
97530d86d4
compiler.tree.propagation.transforms: rename to non-negative-fixnum?.
2013-11-25 12:58:21 -08:00
John Benediktsson
9bb5e34762
compiler.tree.propgation.transforms: make bit? use integer>fixnum.
2013-11-25 12:48:48 -08:00
John Benediktsson
9e65ccaf9f
compiler.tree.propagation.simple: check output types length.
2013-04-26 17:21:22 -07:00
John Benediktsson
5e0e6119e3
compiler.tree.propagation.transforms: intersect and diff should return type of set2.
2013-03-27 07:21:39 -07:00
John Benediktsson
77a3641bb6
compiler.tree.propagation.transforms: also fix diff.
2013-03-26 19:06:05 -07:00
John Benediktsson
c4d832ce4d
compiler.tree.propagation.transforms: fix intersect and add intersects?.
2013-03-26 19:04:50 -07:00
Doug Coleman
33a4117787
compiler: Fix tuple literals in tests.
2013-03-24 01:09:37 -07:00
Doug Coleman
5f377c0849
compiler: Rename value-info, live-interval
2013-03-23 22:56:47 -07:00
Doug Coleman
8c19602ae9
assocs: Add of and ?of. Change all the things at once! Fixes #701 .
2013-03-23 14:59:07 -07:00
John Benediktsson
7da4a74588
compiler: fewer namespace lookups.
2013-03-21 19:11:20 -07:00
John Benediktsson
af1b167c28
compiler.tree.propagation.info: inline <value-info>.
2013-03-08 12:19:24 -08:00
John Benediktsson
04af5f2ffb
hash-sets: faster implementation based on hashtables.
2013-03-07 21:43:17 -08:00
John Benediktsson
5751f6d309
compiler.tree.propagation.transforms: use integer>fixnum-strict in shift.
2013-03-05 08:19:31 -08:00
John Benediktsson
5a7e7b8d9b
compiler.tree.propagation.known-words: retry this change, some issue with use vocabs.
2013-01-22 07:09:49 -08:00
John Benediktsson
f5c898734c
Revert "compiler.tree.propagation.known-words: adding known outputs for some words."
...
This reverts commit 16d8e6555b
.
2013-01-22 06:42:58 -08:00
John Benediktsson
7a63013916
compiler.tree.propagation.known-words: adding known outputs for some words.
2013-01-21 20:28:17 -08:00
Doug Coleman
fe677bac2f
compiler.tree.propagation.recursive: Generalizing intervals in the propagation pass ignored types. Fixes #770 .
2013-01-01 18:47:23 -08:00
John Benediktsson
cf3c197743
compiler.tree.propagation: revert cleanup, this was more correct.
2012-10-05 15:00:49 -07:00
John Benediktsson
f7d58fff90
compiler.tree.propagation: throw the proper error in >fixnum methods.
2012-10-05 09:54:51 -07:00
John Benediktsson
80b39bd4f2
compiler.tree.propagation: cleanup known-words a bit.
2012-10-05 09:47:27 -07:00
John Benediktsson
040b94f5ce
compiler.tree.propagation: make sure integer>fixnum-strict infers a fixnum.
2012-10-05 04:17:43 -07:00
John Benediktsson
e72e1a340f
compiler.tree.propagation: fix >fraction types.
2012-09-11 07:42:39 -07:00
John Benediktsson
e84e508256
math.ratios: speed up some operations on ratios.
2012-09-10 19:53:25 -07:00
John Benediktsson
a4f264509d
math: cleaner "2/" speedup by using custom inlining.
2012-09-10 17:59:03 -07:00
John Benediktsson
465a969b61
layouts: defining "fixnum-bits".
2012-08-21 18:05:59 -07:00
Doug Coleman
cd9dd9d752
core: Throw an error when assigning a bignum to a fixnum tuple slot if the bignum doesn't fit. Fixes #594 .
2012-08-03 14:59:59 -07:00
Doug Coleman
fb4e3ad9bc
compiler: Fix bitand on ratios, floats. Fix shift on ratios, floats. Add integer>fixnum. Fixes #500 .
2012-07-23 09:31:12 -07:00