Slava Pestov
0dc43a94bd
Merge remote branch 'origin/abi-symbols' into fastcall-madness
2010-04-10 00:10:33 -07:00
Slava Pestov
cebbcee9f9
combinators: fix load error
2010-04-06 16:48:30 -04:00
Slava Pestov
67cc74c75e
combinators: call( now throws an error if a quotation that was declared as never returning actually returns
2010-04-06 16:42:30 -04:00
Joe Groff
e8dc04746e
catch merge conflicts in source and report them as such
2010-04-06 13:34:26 -07:00
Joe Groff
3b4f8758b5
Merge branch 'master' of git://factorcode.org/git/factor into abi-symbols
...
Conflicts:
basis/compiler/tests/alien.factor
2010-04-06 12:30:15 -07:00
Slava Pestov
06ac80f098
kernel: add examples for if, when, unless and if*
2010-04-05 19:07:10 -04:00
Slava Pestov
cdc4fb3b62
Get green threads working on Windows
...
- store stack base and limit in TIB
- set up a frame-based structured exception handler in each context's callstack
- boot.x86.32.image has now been replaced by boot.winnt-x86.32.image and boot.unix-x86.32.image
2010-04-03 20:24:33 -04:00
Slava Pestov
30eae10898
continuations: faster with-datastack
2010-04-03 19:10:21 -04:00
Joe Groff
cd0ad27e46
update some more doc examples using old abi strings
2010-04-02 23:16:53 -07:00
Slava Pestov
47f86898d7
vm: pre-allocate context alien
2010-04-02 00:02:21 -04:00
Joe Groff
259d45600b
update alien docs to mention abi symbols
2010-04-01 19:25:24 -07:00
Joe Groff
d6ad21bcc6
make "fastcall" symbol private since it doesn't really work in all cases
2010-04-01 18:34:15 -07:00
Joe Groff
ca9614e746
Merge branch 'master' into abi-symbols
2010-04-01 15:28:36 -07:00
Joe Groff
2890a190a4
alien: add singletons for thiscall and fastcall
2010-03-31 20:30:04 -07:00
Joe Groff
06168b3667
add singletons for stdcall, cdecl, mingw abis
2010-03-31 19:17:06 -07:00
Slava Pestov
de0c2801d2
threads: delete old contexts immediately instead of handing them off to a 'context recycler' thread
2010-03-30 21:47:48 -04:00
Slava Pestov
92b66ada71
sets, hash-sets, bit-sets: fix some typos in the documentation
2010-03-30 01:10:39 -04:00
Slava Pestov
cea2bf4189
threads: use context-switching primitives
2010-03-29 20:40:17 -04:00
Slava Pestov
7360cccdc5
vm: callstack errors were flipped
2010-03-29 01:53:30 -04:00
Daniel Ehrenberg
cacb1f8ebd
Merge branch 'master' into conditional
2010-03-28 19:49:32 -04:00
Slava Pestov
21351e3a25
kernel: don't test callstack overflow on OpenBSD or Windows
2010-03-28 17:58:05 -05:00
Slava Pestov
a04d53c3da
set-context and start-context primitives can now pass parameters around
2010-03-27 08:13:57 -04:00
Slava Pestov
09aa64baaf
vm: report callstack overflow
2010-03-27 07:45:11 -04:00
Slava Pestov
f8134b18cd
Implement start-context and set-context primitives
2010-03-27 02:56:11 -04:00
Slava Pestov
adeb6fb68f
vm: actually use context callstacks when running code
2010-03-26 22:44:43 -04:00
Slava Pestov
ccf8d51137
lexer: fix output type of map-tokens
2010-03-26 16:31:48 -04:00
Slava Pestov
a3413060bb
lexer: each-token and map-tokens did not handle EOF properly
2010-03-26 03:42:07 -04:00
Daniel Ehrenberg
59ee5d825e
Merge branch 'master' of git://factorcode.org/git/factor into conditional
2010-03-19 06:46:16 -04:00
Daniel Ehrenberg
5c0ef36747
Docs for require-when
2010-03-19 06:45:55 -04:00
Daniel Ehrenberg
a2c45378a4
Untested tags for vocabs.loader.test.[mno]
2010-03-19 06:34:25 -04:00
Slava Pestov
af573bd022
Add context-specific special object table, generalizing catchstack_save and current_callback_save fields of context struct
2010-03-18 22:06:00 +13:00
Daniel Ehrenberg
88a4c58cda
Renaming require-if to require-when
2010-03-18 00:24:41 -04:00
Daniel Ehrenberg
df1fce9bba
require-if loads vocabs conditionally, now or later
2010-03-18 00:00:32 -04:00
Daniel Ehrenberg
b0f0c58141
Making <hash-set> faster
2010-03-17 20:12:25 -04:00
Daniel Ehrenberg
a481dc87d4
Fixing spacing in the sets docs
2010-03-16 21:30:17 -04:00
Daniel Ehrenberg
384f854d77
Fixing bugs with sets, including adding new within and without words
2010-03-16 20:17:26 -04:00
Daniel Ehrenberg
1b61e2e5cf
Merge branch 'bags' of git://github.com/littledan/Factor
...
Conflicts:
basis/compiler/cfg/ssa/construction/tdmsc/tdmsc.factor
basis/furnace/auth/auth.factor
basis/stack-checker/backend/backend.factor
2010-03-16 13:28:00 -04:00
Joe Groff
36b8b6fd0b
fill out row variables docs
2010-03-11 11:57:12 -08:00
Joe Groff
d6758793eb
another typo in effects syntax
2010-03-11 11:23:48 -08:00
Joe Groff
08c75fac48
typo in <effect> docs
2010-03-11 11:22:28 -08:00
Joe Groff
5bdc6314e0
make effect<= work with univariable stack effects, deny all bivariable stack effects
2010-03-11 01:37:33 -08:00
Joe Groff
e55373eda1
effect-variable -> row-variable
2010-03-11 01:25:13 -08:00
Joe Groff
d42c2b3a8c
carve up effects.parser too
2010-03-11 01:03:40 -08:00
Joe Groff
eea1326ee7
fix effect of <tuple-boa> primitive
2010-03-09 22:38:41 -08:00
Joe Groff
dd825806da
more help-lint
2010-03-09 21:02:43 -08:00
Joe Groff
1ca57e5465
fix up sequences help-lint
2010-03-09 20:29:44 -08:00
Joe Groff
eb7f737ca2
effects: docs for <effect>, <terminated-effect>, <variable-effect>
2010-03-09 13:50:58 -08:00
Joe Groff
906a86ae2d
mop up compiler errors from macosx load-all
2010-03-09 00:56:07 -08:00
Joe Groff
d4a0a69eb1
generalize stack effects so we can bootstrap with the stricter stack effect checking
2010-03-08 23:38:10 -08:00
Joe Groff
4ce3b99c64
add polymorphic effects for lexer:each-token, map-tokens
2010-03-08 18:55:46 -08:00
Joe Groff
8f0f2bc1de
add polymorphic stack effects to continuations:recover, attempt-all
2010-03-08 18:36:40 -08:00
Joe Groff
d969bc22e3
add documentation about stack effect variable syntax and the effect on the stack checker
2010-03-08 17:17:47 -08:00
Joe Groff
a3a8d61ba3
sequences: effects of push-if and push-either were too strict
2010-03-07 21:56:40 -08:00
Joe Groff
8dbe938ae0
polymorphize splitting private combinators
2010-03-07 18:07:59 -08:00
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