Joe Groff
007128ca7e
generalize stack effect of while, until, and produce
2010-03-05 23:01:22 -08:00
Joe Groff
8a36d57505
make effect variables part of effect syntax, stored out of band in effect tuple
2010-03-05 13:30:10 -08:00
Joe Groff
896891d5af
spray some polymorphic stack effects on kernel, math, and sequences
2010-03-05 00:21:10 -08:00
Joe Groff
3d3b6b610b
Merge branch 'lexer-parsing-word-errors'
2010-03-02 20:46:23 -08:00
Daniel Ehrenberg
4f1819f632
Merge branch 'master' of git://factorcode.org/git/factor into bags
2010-03-02 17:04:45 -05:00
Joe Groff
3db1955a93
record the C++ compiler version in the VM, and expose it with a vm-compiler word
2010-03-01 13:32:07 -08:00
Joe Groff
9086a66746
parse-tokens had two $notes sections. oops!
2010-03-01 11:50:16 -08:00
Joe Groff
a282a8dd26
lexer, parser: update docs on "parse-tokens" and add docs for "each-token", "map-tokens"
2010-03-01 11:47:57 -08:00
Joe Groff
0c71fcccc7
lexer: add "each-token" and "map-tokens", which are equivalent to "parse-token _ each/map" but incremental. update a smattering of parsing words (such as USING:, SYMBOLS:, etc.) to use each-token/map-tokens
2010-02-28 22:19:43 -08:00
Joe Groff
c8c93f8336
classes.tuple.parser: throw bad-slot-name immediately when an invalid slot name in a tuple/struct literal is scanned
2010-02-28 20:14:16 -08:00
Joe Groff
5a653d4473
lexer, parser: show initial parsing word line as part of lexer-errors
2010-02-28 13:01:03 -08:00
Daniel Ehrenberg
3e9e4f0969
Finishing eliminating prune as a synonym of members
2010-02-27 14:52:24 -05:00
Daniel Ehrenberg
92d76657b8
Updated documentation for sets
2010-02-27 00:27:40 -05:00
Daniel Ehrenberg
2b5af07494
Fixing ambiguity between sets and namespaces in many unit tests and furnace.auth
2010-02-26 17:17:40 -05:00
Daniel Ehrenberg
142f530f1b
Making all of basis and extra unambiguous for sets/namespaces
2010-02-26 16:28:38 -05:00
Daniel Ehrenberg
0f0571e48a
Moving new-sets to sets
2010-02-26 16:01:01 -05:00
Daniel Ehrenberg
8b219ef472
Making it fast to create a new hashset
2010-02-26 13:24:26 -05:00
Daniel Ehrenberg
4e263269e2
Finishing porting sets features to new-sets
2010-02-26 13:22:56 -05:00
Daniel Ehrenberg
9943f225d9
Making propagation and tuple.parser refer to new-sets; adding some missing features from sets into new-sets
2010-02-26 12:07:37 -05:00
Daniel Ehrenberg
d0e7d8198e
Moving new-sets and hash-sets to core
2010-02-26 11:01:57 -05:00
Slava Pestov
fce5a1644a
sequences: fix help lint
2010-02-26 00:44:48 +13:00
Slava Pestov
e5fc398dae
sequences: add cartesian-each, cartesian-map, cartesian-product words to eliminate some duplication throughout the codebase
2010-02-25 20:54:57 +13:00
Slava Pestov
6b88939d47
sequences: add suffix! to destructive sequence ops article
2010-02-25 05:57:09 +13:00
Slava Pestov
2dde82ffff
Slices over specialized arrays can now be passed to C functions, written to binary output streams, and given to malloc-byte-array
2010-02-25 04:50:31 +13:00
Slava Pestov
c1e7a3ffc2
Specialized arrays, structs and other objects responding to the >c-ptr / byte-length protocol can now be written to binary streams
2010-02-24 20:18:41 +13:00
Joe Groff
721f9018b1
fix typos in alien docs
2010-02-23 11:56:10 -08:00
Joe Groff
dff7d09055
update docs about pointer types
2010-02-23 11:03:48 -08:00
Slava Pestov
daf2e5270c
Get foldable and flushable declarations working on typed words
2010-02-24 00:16:55 +13:00
Slava Pestov
1f89dc505a
effects.parser: throw a proper no-word error if effect references an unknown class word
2010-02-23 23:57:13 +13:00
Joe Groff
524e58078a
repeated runs of classes.tuple test would fail because partially defined classes.tuple.tests:bad-superclass type would shadow classes.tuple:bad-superclass
2010-02-22 19:35:52 -08:00
Doug Coleman
06471c0a0d
Fix a couple of typos in complex number docs
2010-02-22 17:39:30 -06:00
Slava Pestov
31c467cf52
parser: auto-use prefers non-private words to private words
2010-02-22 19:25:08 +13:00
Slava Pestov
7d90469666
vocabs.loader: tweak platform checking logic
2010-02-22 13:17:46 +13:00
Slava Pestov
b907ada6a9
vocabs: document platforms.txt
2010-02-21 20:38:09 +13:00
Slava Pestov
63365bd3ea
native-thread-test: clean up
2010-02-21 17:48:05 +13:00
Slava Pestov
6249e264e1
continuations: add a throw-continue word for resumable errors, and change vocabs.metadata to throw a resumable error if the current platform is not supported
2010-02-20 13:41:33 +13:00
Slava Pestov
e95dc9440f
vocabs.loader.test.a: fix
2010-02-20 13:31:51 +13:00
Slava Pestov
0aad3e6e12
vocabs.metadata: replace unportable tag with a platforms.txt file for more fine-grained control. Rename unportable tag to untested for remaining cases
2010-02-20 13:30:49 +13:00
Slava Pestov
0c20afed7c
make: documentation tweak
2010-02-20 12:18:29 +13:00
Slava Pestov
58d035f1c7
Fix two problems with recompilation: predicate constant folding was recording unsatisfied dependencies in some cases, and literal tuple instances of forgotten classes would cause problems for method inlining
2010-02-20 12:01:47 +13:00
Philipp Brüschweiler
b49b577b10
assocs: doc fixes
2010-02-19 11:26:01 +01:00
Philipp Brüschweiler
d950258284
sequences: clarify some stack effect and examlpes in docs
2010-02-19 11:26:01 +01:00
Philipp Brüschweiler
4fbdb8eaa3
math: typo in rem docs
2010-02-19 11:23:20 +01:00
Slava Pestov
74891bc02a
Update documentation for new help lint check
2010-02-19 12:31:52 +13:00
Joe Groff
8e1a81f8d5
Revert "fix append-path and vocab-dir to use path-separator"
...
This reverts commit 0f3026b871 .
2010-02-17 16:06:45 -08:00
Joe Groff
a48dd77d61
Revert "io.pathnames: make absolute-path? public"
...
This reverts commit 48756c9fca .
2010-02-17 16:06:30 -08:00
Joe Groff
a968c15b41
Revert "make io.pathnames tests path-separator-neutral"
...
This reverts commit f344c00629 .
2010-02-17 16:06:13 -08:00
Joe Groff
de7bafbf47
Revert "vocabs.loader: make vocab-dir+ use path-separator too"
...
This reverts commit 2dcc720629 .
2010-02-17 16:05:59 -08:00
Joe Groff
67b5b8436f
Merge branch 'master' of git://factorcode.org/git/factor
2010-02-17 12:50:46 -08:00
Slava Pestov
fd1c0a5d0a
io.pathnames: fix doc typo
2010-02-18 08:38:45 +13:00
Joe Groff
0767e066fd
Merge branch 'master' of git://factorcode.org/git/factor
2010-02-17 11:37:14 -08:00
Slava Pestov
06fb9aac4f
Fix unit test failures
2010-02-18 04:58:30 +13:00
Slava Pestov
6675bc2ace
classes.tuple: document final class declaration
2010-02-18 04:13:34 +13:00
Slava Pestov
fea8be5b6f
classes.tuple: fix screwup
2010-02-18 03:00:43 +13:00
Slava Pestov
56dff5b0f4
typed: only unbox final classes. Fixes bug reported by littledan
2010-02-18 02:39:12 +13:00
Slava Pestov
1100861204
Add support for final tuple classes which cannot be subclassed: TUPLE: foo ... ; final
2010-02-18 02:19:57 +13:00
Slava Pestov
d5a7393606
core: minor cleanups
2010-02-18 01:57:22 +13:00
Slava Pestov
9cda3cf03e
Minor documentation fixes
2010-02-18 01:19:39 +13:00
Slava Pestov
5eed2e5ce5
combinators: better wrong-values error
2010-02-18 01:19:26 +13:00
Joe Groff
2dcc720629
vocabs.loader: make vocab-dir+ use path-separator too
2010-02-16 19:29:42 -08:00
Joe Groff
f344c00629
make io.pathnames tests path-separator-neutral
2010-02-16 19:28:51 -08:00
Joe Groff
48756c9fca
io.pathnames: make absolute-path? public
2010-02-16 19:01:44 -08:00
Joe Groff
0f3026b871
fix append-path and vocab-dir to use path-separator
2010-02-16 18:40:40 -08:00
Slava Pestov
4f62d63e47
Merge branch 'deploy-resources' of git://factorcode.org/git/factor into deploy-resources
2010-02-17 00:17:09 +13:00
Slava Pestov
2d57c9d815
Clean up some tags
2010-02-17 00:12:55 +13:00
Slava Pestov
974074d089
A few documentation fixes
2010-02-17 00:05:36 +13:00
Slava Pestov
2594bf9843
assocs: move conjoin and conjoin-at to assoc docs
2010-02-16 15:29:46 +13:00
Joe Groff
a341b293df
update vocabs and tools.deploy docs to mention icon files
2010-02-15 14:18:26 -08:00
Joe Groff
73b8249cf3
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/tools/deploy/shaker/shaker.factor
2010-02-15 11:50:43 -08:00
Joe Groff
a447900af5
update vocabs and deploy docs to mention resources.txt
2010-02-15 10:14:30 -08:00
Slava Pestov
a36d9eb669
classes: fix regression from recent bug fix
2010-02-15 23:46:55 +13:00
Slava Pestov
9c0192a911
classes: call reset-generic on predicate word to avoid redefinition problems (reported by littledan)
2010-02-15 18:34:45 +13:00
Slava Pestov
4cc907e1af
compiler.tree.propagation, compiler.tree.escape-analysis: make these passes handle constants in a more robust way in compilation units involving tuple reshaping
2010-02-12 02:50:59 +13:00
Joe Groff
e5803161f0
Merge branch 'master' of git://factorcode.org/git/factor
2010-02-09 19:42:54 -08:00
Slava Pestov
2fd36ae5ea
sequences: remove outdated comment
2010-02-10 16:12:02 +13:00
Slava Pestov
5a27fd335b
math.integers: remove a -rot usage
2010-02-10 15:44:49 +13:00
Slava Pestov
5f38fb6fbd
sequences: remove a -rot usage
2010-02-10 15:44:15 +13:00
Slava Pestov
b2ba7ea6ec
classes.algebra: remove class<=> -- it's never used and has incorrect semantics
2010-02-10 15:04:48 +13:00
Joe Groff
98ce049d22
update syntax-floats for changes to math.parser. clarify docs on hex float literals
2010-02-08 10:42:04 -08:00
Joe Groff
2626b61df2
math.parser: support leading + on significand and exponent so string>number can be a proper superset of C strto* functions
2010-02-07 14:21:59 -08:00
Joe Groff
dc8c6bf0e2
math.parser: add unit tests to ensure that "1e2" parses as 100.0 in decimal and as integer 1E2 in bases >= 15 (it does now)
2010-02-07 13:09:59 -08:00
Joe Groff
dbb952889f
math.parser: fix digit> bug found by Blei
2010-02-07 13:04:20 -08:00
Slava Pestov
18ed2d8c69
vm: nuke unused (string>float) primitive
2010-02-08 08:16:56 +13:00
Slava Pestov
a50f184b18
math.parser: clean up and merge new-math-parser branch
2010-02-08 01:39:18 +13:00
Slava Pestov
13d64f44a2
Merge branch 'new-math-parser' of git://factorcode.org/git/factor into new-math-parser
2010-02-07 23:28:18 +13:00
Joe Groff
677c74b0eb
assocs: use collector-for in assoc>map to create a temporary vector appropriate for the exemplar
2010-02-06 23:59:34 -08:00
Slava Pestov
b3c7b51a31
tools.deploy.shaker: don't try to intern all word props anymore
2010-02-04 17:40:53 +13:00
Slava Pestov
83228368c1
Fix classes.tuple tests and assocs help lint
2010-02-04 08:04:47 +13:00
Slava Pestov
410c501b76
compiler.units: fix bug that came up recently with nested compilation units
2010-02-04 03:20:48 +13:00
Slava Pestov
57a47d9566
Rename update to assoc-union!, add assoc-filter! assoc-diff! words
2010-02-04 02:55:00 +13:00
Slava Pestov
310399995e
Add code heap introspection primitive to VM, and make a code-blocks word in tools.memory that wraps a useful interface around this. Add a lookup-return-address word and use this in tools.disassembler.utils
2010-02-03 23:11:32 +13:00
Slava Pestov
a968f37bf9
Test fixes
2010-02-03 23:11:31 +13:00
Slava Pestov
af620fa8b4
Documentation improvements
2010-02-03 23:11:30 +13:00
Slava Pestov
d19709c188
vm: modify-code-heap primitive now takes a pair of parameters, update-existing? and reset-pics?. If no generic words were changed, PICs do not need to be reset. If no existing words were redefined, the code heap doesn't have to be traced at all. Speeds up compilation of PEGs since those create lots of compilation units
2010-02-03 23:11:28 +13:00
Slava Pestov
cf37a74316
combinators: fix typo
2010-02-03 23:11:28 +13:00
Slava Pestov
6e65bc10f4
Clarify documentation for compilation units and 'undefined' error
2010-02-03 23:11:28 +13:00
Slava Pestov
a3bed25a55
combinators: ricing call-effect
2010-02-03 23:11:26 +13:00
Slava Pestov
002d454aa7
classes.tuple: make error slots read only for small space savings
2010-02-03 23:11:25 +13:00
Slava Pestov
c3f66d49a3
Better error message for call( when quotation has the wrong effect
2010-02-03 23:11:25 +13:00
Slava Pestov
29e1d268b7
generic: rename method-body predicate class to method
2010-02-03 23:11:24 +13:00
Slava Pestov
7fa61addcd
words: undefined error now contains the word in question
2010-02-03 23:11:23 +13:00
Slava Pestov
8818ccbf71
Minor updates to string documentation
2010-02-03 23:07:53 +13:00
Slava Pestov
edd9de217e
Minor doc fixes
2010-02-03 22:56:32 +13:00
Brad Christensen
64c22d69ad
More documentation cleanup.
2010-02-03 00:05:04 -07:00
Brad Christensen
c37b4f5f61
A number of documentation fixes and cleanup.
2010-02-03 00:05:03 -07:00
Brad Christensen
51ae0a604a
Minor doc cleanup.
2010-02-03 00:05:02 -07:00
Slava Pestov
03a74f2237
classes: If a tuple class with subclasses is redefined into something that's not a tuple class, subclasses are changed to inherit from 'tuple' instead of being forgotten. Also, changing the metaclass of a union or intersection member no longer removes it from the union or intersection. Finally, make some internal words private
2010-02-01 02:48:39 +13:00
Slava Pestov
1f255d09e9
classes: more robust code for detecting circular inheritance, move it out of classes.tuple since predicate classes need the same check too
2010-02-01 00:08:18 +13:00
Slava Pestov
7f664a6387
Fix a couple of unit tests that were relying on the old compiler crossref structures
2010-01-31 23:26:55 +13:00
erikc
c84267aaf9
Merge up
2010-01-30 20:48:06 -08:00
erikc
4506512a16
Merge up
2010-01-30 20:39:43 -08:00
Slava Pestov
8f763fe8da
Merge git://github.com/littledan/Factor into littledan
2010-01-31 02:54:58 +13:00
Slava Pestov
edcf259f63
words: fix unit test
2010-01-31 02:50:47 +13:00
Slava Pestov
8e2e869ec5
stack-checker.dependencies: make conditional dependencies more robust
2010-01-31 01:55:35 +13:00
Slava Pestov
127a11c28c
math: docs fix
2010-01-30 21:14:41 +13:00
Slava Pestov
ca4770bfc5
compiler.units: fix call-next-method call site recompilation
2010-01-30 09:29:01 +13:00
Slava Pestov
df16224ab2
Re-work flushed dependencies into new compiler cross-referencing framework
2010-01-30 09:29:00 +13:00
Slava Pestov
468a3a74f1
Re-defining a tuple class now invalidates cached quotation stack effects
2010-01-30 09:28:59 +13:00
Slava Pestov
2138b55708
New 'conditional dependency' mechanism for more accurate recording of recompilation information
2010-01-30 09:28:57 +13:00
Slava Pestov
ee74d989df
classes.tuple: documentation fix
2010-01-30 09:28:56 +13:00
Slava Pestov
0738e85df1
Work in progress: record constant-folds of predicate words, and call-next-method invocations, in the same way that method inlining are recorded, for greater recompilation accuracy
2010-01-30 09:28:56 +13:00
Slava Pestov
9662b5e096
Rename predicate-word to create-predicate-word and add a new predicate-word word
2010-01-30 09:28:55 +13:00
Slava Pestov
9d207cc913
Fix regression when forgetting classes
2010-01-30 09:28:55 +13:00
Slava Pestov
7c9250d5b2
Minor documentation updates
2010-01-30 09:28:54 +13:00
Slava Pestov
4f1ba2986a
classes.mixin: privacy please
2010-01-30 09:28:53 +13:00
Slava Pestov
ed7f8341e5
More changes so that mixins trigger even less recompilation
2010-01-30 09:28:53 +13:00
Slava Pestov
c591988707
classes.algebra: couple more tests
2010-01-30 09:28:53 +13:00
Slava Pestov
c178279454
Clean up class algebra a bit, and change mixins to recompile less, taking advantage of new semantics
2010-01-30 09:28:52 +13:00
Slava Pestov
37e03d2e01
Trying to fix mixin semantics
2010-01-30 09:28:51 +13:00
Doug Coleman
5c0cf72b1e
try-find is just attempt-all. oops
2010-01-28 23:28:11 -06:00
Doug Coleman
4f8f1c2037
add some unit tests for try-find
2010-01-28 23:12:31 -06:00
Doug Coleman
b96aa5b025
add try-find for random.windows
2010-01-28 22:44:31 -06:00
Slava Pestov
1e9dc571f2
Fix and clean up stage1 bootstrap
2010-01-28 17:30:35 +13:00
Slava Pestov
0fad658662
core: fix bad interaction between stage1 bootstrap and manifest update code
2010-01-28 03:02:54 +13:00
Slava Pestov
95f2446413
vocabs.parser: a couple of fixes
2010-01-27 23:20:17 +13:00
Slava Pestov
421a244281
Throw a nice error at parse time if an attempt is made to declare a GENERIC: or MACRO: word inline. Such words cannot be inlined, and doing this before previously result in confusing error messages
2010-01-27 21:00:10 +13:00
Slava Pestov
871eb5fd74
vocabs.parser: The manifest is now a definition observer, and updates itself when compilation units complete. This helps keep listener's search path up to date if vocabularies and words are renamed, defined, and undefined
...
- This makes forget-vocab more reliable in the listener
- It also fixes the problem of listener sessions where QUALIFIED: was used referring to outdated words if the vocabulary in question was reloaded
2010-01-27 20:49:26 +13:00
Slava Pestov
43a02cfa7c
classes.tuple: tests were changing superclass of vocab tuple
2010-01-27 20:24:33 +13:00
Slava Pestov
6889b0b7f9
vm: 'become' primitive needs to update literal references in code blocks
2010-01-27 18:42:31 +13:00
Daniel Ehrenberg
8f4bd0e7df
Merge branch 'master' of git://factorcode.org/git/factor
2010-01-26 14:14:05 -06:00
Daniel Ehrenberg
8837fe5792
Tests for propagation additions; making fixnum-bit? inline
2010-01-25 20:15:17 -06:00
Slava Pestov
34f40c3a72
Various documentation improvements
2010-01-26 01:01:12 +13:00
Doug Coleman
942b907890
move sequence-hashcode-step to private
2010-01-22 16:30:22 -06:00
Doug Coleman
91d816cca7
move (accumulate) to sequences.private
2010-01-22 15:04:13 -06:00
Doug Coleman
8ae200d419
Rename accumulator to collector, pusher to selector
2010-01-22 15:00:53 -06:00
Doug Coleman
5bb6cc9471
Fix image save on Windows
2010-01-22 12:59:36 -06:00
Doug Coleman
9502f6f091
Save images to a temporary file first, then call MOVE_FILE to avoid writing incomplete and truncated images.
2010-01-22 12:59:20 -06:00
Daniel Ehrenberg
b24d8f93da
Merge branch 'master' of git://factorcode.org/git/factor
2010-01-20 00:16:55 -06:00
Daniel Ehrenberg
8b04f0f417
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/compiler/tree/propagation/transforms/transforms.factor
2010-01-20 00:15:55 -06:00
Slava Pestov
fc5029aa15
kernel: remove bogus test
2010-01-20 19:13:58 +13:00