John Benediktsson
6c8c5992a1
make: change default size of make-assoc.
2012-07-19 13:53:42 -07:00
John Benediktsson
559b5bfa5b
using the new H{ } make.
2012-07-19 09:50:09 -07:00
John Benediktsson
04320d27f4
fixing some docs.
2012-07-19 09:47:14 -07:00
John Benediktsson
3e19d9d18d
make: allow make to be used to create assocs.
2012-07-19 09:35:28 -07:00
Doug Coleman
42f4dc36b2
namespaces: Rename ``bind`` to ``with-variables``. Update a few places that called ``global [ ] with-variables`` to use ``with-global``.
2012-07-19 00:02:47 -07:00
John Benediktsson
ac9fc4035f
sequences: faster last / set-last.
2012-07-18 12:31:53 -07:00
John Benediktsson
75778c89c1
Revert "alien: these make "utf8 encode" 7-8% faster."
...
This reverts commit c9664e746b
.
2012-07-18 07:56:05 -07:00
John Benediktsson
940848a813
alien: these make "utf8 encode" 7-8% faster.
2012-07-17 22:52:37 -07:00
John Benediktsson
f0698ee97f
assocs: faster map>assoc.
2012-07-17 15:28:44 -07:00
John Benediktsson
75a1303a36
graphs: simplify by removing temporary namespace variables.
2012-07-17 11:00:38 -07:00
John Benediktsson
b9900248b7
io: simplify stream-exemplar.
2012-07-16 19:30:10 -07:00
John Benediktsson
936bcc48e4
sequences: prepend-as should be inlined.
2012-07-16 11:54:32 -07:00
John Benediktsson
28377f49e7
vocabs: faster check-vocab-name.
2012-07-15 14:21:25 -07:00
John Benediktsson
da692ff7ec
splitting: slightly faster string-lines.
2012-07-13 20:26:07 -07:00
John Benediktsson
4f260ab9bd
"H{ } substitute" is faster than "{ } substitute".
2012-07-13 19:06:38 -07:00
John Benediktsson
646e9db251
splitting: string-lines is 30-70% faster.
2012-07-13 18:24:45 -07:00
John Benediktsson
a642f39a9a
io.streams.sequence: faster stream-read-until.
2012-07-11 18:26:41 -07:00
Doug Coleman
f448405c31
parser: Drunk coding is buzzed coding.
2012-06-21 17:35:24 -07:00
Doug Coleman
cab93dea04
parser: last fix.
2012-06-21 14:18:55 -07:00
Doug Coleman
9d4d5d0d00
renaming fixes: Forgot some words.
2012-06-21 11:54:43 -07:00
Doug Coleman
2f167560f1
issue #358 : rename no-current-vocab
2012-06-21 08:38:05 -07:00
Doug Coleman
7441fa81fc
issue #358 : Rename check-method and check-mixin-class TUPLE:s to ERROR:s.
2012-06-21 08:35:41 -07:00
John Benediktsson
55b127f96b
splitting: adding split*, a variant that keeps elements we split upon.
2012-06-20 19:57:11 -07:00
John Benediktsson
752b5c6887
io.streams.memory: adding with-memory-reader.
2012-06-18 17:24:21 -07:00
John Benediktsson
d1f3b326e5
math: using if-zero in more places.
2012-06-18 14:32:39 -07:00
John Benediktsson
bec49ff840
math.parser: simplify error types.
2012-06-08 07:32:01 -07:00
John Benediktsson
437b1f8785
math.parser: add some tests for errors.
2012-06-06 15:14:52 -07:00
John Benediktsson
3967b19aa5
math.parser: better error messages suggested by @erg.
2012-06-06 15:12:33 -07:00
John Benediktsson
9dbeef4933
math.parser: only allow 10 and 16 base for float>base.
2012-06-06 14:50:07 -07:00
Doug Coleman
cee0b9e854
classes.tuple: Better error message for tuples that try to inherit from themselves. Add must-fail tests for tuples that try to inherit from themselves and for inheriting from a generic.
...
Fixes #412 .
2012-06-01 16:59:03 -07:00
John Benediktsson
915176822b
sequences: un-inline prepend to fix "cannot call" error.
2012-05-29 15:58:19 -07:00
John Benediktsson
1a6be98c45
sequences: change prepend to return type of first sequence to match append.
2012-05-29 11:59:03 -07:00
Felix Kaiser
bad2d7e499
parser: fix typo in docs
2012-05-20 00:34:51 +02:00
John Benediktsson
0f6972b98b
hash-sets: using ?adjoin to implement duplicates, some tests.
2012-05-14 15:47:56 -07:00
John Benediktsson
548af01845
sets: adding ?adjoin.
2012-05-14 15:47:44 -07:00
Doug Coleman
da1747ffed
compiler.units: Oops, meant not to commit this one.
2012-05-04 09:05:43 -07:00
Doug Coleman
3507b9bad7
classes:
...
- Allow methods to dispatch off union{ } and intersection{ } classes.
- Add not{ } anonymous-complement syntax.
- Define class-name for anonymous-union/intersection/complement and maybes, and clean up pprint.
- Change maybe: foo to maybe{ foo }
- Call sort-classes when making anonymous-union/anonymous-intersection classes so that they are canonicalized.
2012-05-03 19:45:30 -07:00
John Benediktsson
e38e9f2850
sequences: adding find-index-from.
2012-04-27 13:41:47 -07:00
John Benediktsson
d37e5192de
splitting: fixing split1-last.
2012-04-27 08:48:57 -07:00
John Benediktsson
5e16810075
using reverse! when possible.
2012-04-25 20:09:36 -07:00
John Benediktsson
664908c78f
assocs: 50% faster zip.
2012-04-25 20:09:21 -07:00
John Benediktsson
74b8e390f4
make: most sequences are less than 32.
2012-04-19 22:02:47 -07:00
John Benediktsson
8c1165cac1
cleanup some lint warnings.
2012-04-18 17:46:01 -07:00
John Benediktsson
a99afa996c
splitting: fix docs for split1-when.
2012-04-18 15:59:08 -07:00
John Benediktsson
94b73d9371
splitting: adding split1-when.
2012-04-18 15:55:15 -07:00
John Benediktsson
837b22336e
classes.algebra: make class= and only-classoid? use short-circuit logic.
2012-04-18 12:00:24 -07:00
John Benediktsson
c7b6003233
sequences: fixing "Cannot apply 'call' to a run-time computed value" error in map-reduce and 2map-reduce.
2012-04-17 19:04:10 -07:00
John Benediktsson
2407ee0234
sequences: make map-reduce 5-20% faster, and 2map-reduce 3-5% faster.
2012-04-17 17:58:19 -07:00
John Benediktsson
db60f6e8c9
sequences: adding a test for map-reduce.
2012-04-16 17:52:21 -07:00
John Benediktsson
ca4d5cbde0
hash-sets: speed up diff, intersect, and union.
2012-04-16 10:58:08 -07:00
John Benediktsson
22c26ff3f5
vm: adding bignum_gcd primitive.
2012-04-05 09:17:35 -07:00
otoburb
30d8b5211e
io.pathnames: removed dependency on environment.
...
I had an erroneous dependency on basis/environment.
2012-03-30 21:03:01 -07:00
otoburb
152c301d49
io.pathnames: Revised ~ support to expand on the first tilde, and not on "~/".
...
This mimics the same behaviour as "ls ~" in the shell, which expands the alias
as a directory, and not as a filename. For the specific edge-case where a
filename called "~" must have a path constructed to it (e.g. "./~" or "~/~").
2012-03-30 21:01:57 -07:00
otoburb
cb6eb8b2bd
io.pathnames: Added ~/ (tilde) prefix recognition as a special pathname.
...
vocab:, resource: and ~/ are special pathnames. Modified absolute-path word,
added test cases and updated io.pathname documentation.
2012-03-30 21:01:46 -07:00
Joe Groff
83a3a0346b
io.files: check argv when initing resource-path
2012-03-27 16:58:12 -07:00
Joe Groff
526ff277d0
parse -resource-path= during bootstrap
2012-03-25 14:02:32 -07:00
Doug Coleman
ee721d1811
kernel: Change the example for with to be more clear. Division example credit goes to chezmax.
2012-02-16 09:49:08 -08:00
Joe Groff
0ddb6fa96e
Revert "io.pathnames: Added ~/ (tilde) prefix recognition as a special pathname."
...
This reverts commit 4e10f09787
.
2012-01-31 11:46:02 -08:00
Joe Groff
af8dc62104
Revert "io.pathnames: Revised ~ support to expand on the first tilde, and not on "~/"."
...
This reverts commit 251a2a19a6
.
2012-01-31 11:45:51 -08:00
otoburb
dc11f2d7a2
io.pathnames: Revised ~ support to expand on the first tilde, and not on "~/".
...
This mimics the same behaviour as "ls ~" in the shell, which expands the alias
as a directory, and not as a filename. For the specific edge-case where a
filename called "~" must have a path constructed to it (e.g. "./~" or "~/~").
2012-01-11 02:36:47 +00:00
otoburb
a5e8cc75b9
io.pathnames: Added ~/ (tilde) prefix recognition as a special pathname.
...
vocab:, resource: and ~/ are special pathnames. Modified absolute-path word,
added test cases and updated io.pathname documentation.
2012-01-11 02:36:47 +00:00
Slava Pestov
d1b6106011
Set up listener's manifest so that words defined in "scratchpad" take precedence over other vocabularies and do not raise a restart. This matches the behavior of IN: and USE: in files, where the IN: takes precedence. Also remove unused clear-manifest word. Fixes #407
2012-01-02 23:18:52 -06:00
Joe Groff
c4bd4dc1cc
math.parser: hex> etc. shouldn't take radix prefix
...
Fixes #453
2011-12-16 17:20:05 -08:00
rien
b3747936b9
fixed effect based on inner behavior and outer context
2011-12-10 19:47:34 -05:00
Doug Coleman
ad8a1c3905
bootstrap/stage1: Turn off parser-quiet? flag sooner so the files loaded in the USING: list in stage2 print a loading message.
2011-11-30 23:15:43 -08:00
Doug Coleman
3ba787b277
core/basis: trim down using lists
2011-11-30 23:15:42 -08:00
Joe Groff
78d23ce6a0
io: implement stream protocols on f
...
Fixes deployed applications that write to output-stream
2011-11-28 20:36:34 -08:00
Joe Groff
16e510bc76
namespaces: rework so a singleton isn't necessary
...
Make global foldable, and make the underlying global object a hashtable wrapper. Also, use a tuple instead of a generic array for the global box type.
2011-11-28 18:25:27 -08:00
Joe Groff
a1b730e867
namespaces: make set-global/get-global foldable
...
Store the globals hashtable as an array of boxes so that the key-to-reference mapping is constant. Use a singleton and an unfoldable "box-at" word so that get-global and set-global optimize to direct operations on the associated box when the variable name is a compile-time constant. Fixes #200 .
2011-11-28 18:25:27 -08:00
Doug Coleman
2b87eaa1b5
generalizations: Refactor stack-checker so that smart combinators can be used with curry and compose.
2011-11-27 20:25:22 -08:00
Joe Groff
7ac7adeb67
syntax: add note to #! docs
2011-11-27 15:03:40 -08:00
Joe Groff
2cf8b32bda
lexer: skip #! as a single token at front of line
...
Fixes #370
2011-11-27 14:59:54 -08:00
Joe Groff
1d9838aa57
io.files: back out resource-path change
...
It's too brittle against varying current directories or the Factor directory being moved.
2011-11-27 12:37:58 -08:00
Joe Groff
88c9483343
io.files: use initialize to set resource-path
...
If a resource path is already set in the image, don't change it. Should make #364 work a bit more as expected, and let us set the resource path for deployed Mac OS X bundles.
2011-11-27 12:37:58 -08:00
Joe Groff
98fc1e28bd
math.integers: make bignum/f round to even on tie
...
Fixes #372
2011-11-26 17:44:29 -08:00
Joe Groff
0f5b551790
math.integers: pass tests even if number-base set
2011-11-26 17:37:17 -08:00
Joe Groff
269fe9ea1a
math.integers: test round-to-even-on-tie behavior
2011-11-26 16:03:43 -08:00
Joe Groff
90f34d092c
math: neg? needs to be defined for all reals
2011-11-26 15:37:58 -08:00
Joe Groff
a97a9ede15
math.parser: don't accept hex float without expt
...
Part of #372
2011-11-26 15:15:46 -08:00
Joe Groff
e58afa8ab5
oops, radix prefixes shouldn't chain
2011-11-24 12:39:52 -08:00
Joe Groff
fa979425f3
math.parser: test harder
2011-11-24 12:34:50 -08:00
Joe Groff
14efcc69ab
math.parser: reject "0x" etc. without any digits
2011-11-24 12:27:40 -08:00
Joe Groff
0b45465722
parser: remove parse-base dead code
2011-11-23 22:33:31 -08:00
Joe Groff
07abeee9d9
syntax: remove BIN: HEX: OCT:
2011-11-23 20:07:33 -08:00
Joe Groff
4b6559849f
math.parser: oops
2011-11-23 19:51:15 -08:00
Joe Groff
4e8a1d0bb4
math: add neg? word
...
Do the right thing with integers or floats
2011-11-23 19:51:05 -08:00
Joe Groff
72de75b881
let's pretend BIN: HEX: OCT: never happened
2011-11-23 19:22:37 -08:00
Joe Groff
943596575a
use radix literals
2011-11-23 19:03:40 -08:00
Joe Groff
e738c7206c
math.parser: natively support 0b 0o 0x syntax
...
Closes #371
2011-11-23 18:30:22 -08:00
Doug Coleman
64bbd248d5
classes.maybe: Change the type of maybe's class slot. As a result, maybe: maybe: integer is valid now, so fix the unit tests and its prettyprinting.
2011-11-23 01:43:02 -08:00
Doug Coleman
0700dca792
classes.maybe: make maybe's slot type a classoid so you can do maybe: union{ }. Fix prettyprinting of anonymous-union/intersection. Fixes #427 , fixes #428 .
2011-11-23 01:19:09 -08:00
Doug Coleman
f90bc5cdb6
classes: optimize instance? for classoids
2011-11-22 20:38:07 -08:00
Doug Coleman
82c5388f68
classes: add syntax for intersection{ and union{ anonymous classes. make classoid a mixin.
2011-11-22 18:49:42 -08:00
Doug Coleman
cab0369fec
classes: Make methods dispatch on maybes. Fix a couple bugs in the implementation of maybe. classoid? is now a dumb test if an object could be a well-formed classoid; valid-classoid? tests for well-formedness. Move maybe tests. Make pprint* work better on methods.
2011-11-22 15:12:20 -08:00
Doug Coleman
fac17c10ba
classes.maybe: move maybe definition from classes.union to classes.maybe
2011-11-22 02:46:36 -08:00
Doug Coleman
067f9830ef
classes.union: Define a maybe: word that makes a tuple that acts as an anonymous union for a type and f. Updated all the places we define UNION: ?foo foo POSTPONE: f ;. Fixes #416 and lots of headaches.
2011-11-22 01:56:13 -08:00
Joe Groff
1d4660c7ec
random: go faster
...
* Use int <ref> instead of 4 >le
* Inline sequences:push-all
* Types, hints, inlines
Re: #328
2011-11-15 20:45:16 -08:00
Joe Groff
34e77ec408
strings: inline >string and 1string
...
Fixes #340
2011-11-15 19:15:19 -08:00
Joe Groff
5a66b3b329
rearrange source-file-error error. to load earlier
...
Fixes #359
2011-11-15 18:26:35 -08:00
John Benediktsson
95d5daaa7d
slots: fix initial value tests.
2011-11-14 10:26:08 -08:00
John Benediktsson
00280a52a4
assocs: 5-8% performance improvement to assoc>map. Fixes #69 .
2011-11-12 17:02:33 -08:00
Slava Pestov
07ef058fb0
Fix bootstrap
2011-11-12 16:45:04 -08:00
Slava Pestov
29bc075bc7
hashtables: small cleanup
2011-11-12 15:35:51 -08:00
Slava Pestov
03d6665166
Fix ambiguity between 'initial: f' and no initial value in a slot spec. Fixes #382
2011-11-12 15:35:51 -08:00
Joe Groff
e24400679f
vm: more defense against multi-faulting
...
* Clear faulting_p from a safepoint rather than inside general_error, because jumping into unwind-native-frames could blow up.
* Handle multiple faults from fatal_error by breakpointing. Is there anything else we can safely do at that point?
* Verify memory protection faults in the top half of the signal handlers because signal dispatch could fault. Treat memory faults during gc or fep as fatal errors.
* Add a function factor_vm::abort() that restores the default SIGABRT handler and ::abort()s. Use it from fatal_error() so we get useful context from gdb and so the user gets feedback from the system crash reporter that Factor blew up and didn't just disappear.
* In factorbug(), don't proceed with .s .r .c if it would be unsafe to do so.
* Don't pile on signals if we've already called fatal_error().
2011-11-12 13:02:57 -08:00
Joe Groff
69f35b36aa
math.parser: undo some inlining to shrink size
...
For #318 .
2011-11-11 15:49:53 -08:00
John Benediktsson
7b28e60e0e
hashtables: fix docs for new-key@, and note that quadratic probing is used now.
2011-11-10 16:20:59 -08:00
Joe Groff
3552ade9b1
bootstrap.primitives: remove counting "profiling"
2011-11-10 16:04:42 -08:00
Joe Groff
c31530caec
vm: strip out call-counting profiler
...
This makes the separate "code" and "entry_point" fields in word and quotation redundant, so also remove them to reclaim an additional cell per word and quotation object, which should help with #318 .
2011-11-10 16:01:07 -08:00
John Benediktsson
e29c4589c4
hashtables: allow re-using deleted tombstones. Fixes #381 .
2011-11-10 13:05:51 -08:00
John Benediktsson
27b96452ee
combinators: fix docs for case.
2011-11-10 11:20:28 -08:00
Joe Groff
47cedd8d3d
slice boa -> <slice-unsafe>
...
If you didn't define it, don't boa it
2011-11-09 19:22:09 -08:00
Joe Groff
0cf0b91aad
io: clean up some mess
2011-11-09 19:11:04 -08:00
Joe Groff
b4947a62f6
io: fix each-block-slice typo
2011-11-09 18:06:58 -08:00
Joe Groff
4f4bbd3304
io: more hot-rodding for #376
...
* Change the interface of read-into to return a slice and an eof boolean separately so the compiler can optimize the slice.
* Add an each-stream-block-slice combinator that behaves like each-block but reuses a preallocated buffer for every iteration.
* Pull some strings in the stream-read-into implementation to further improve type propagation and bounds check elimination.
2011-11-09 17:22:01 -08:00
John Benediktsson
22e9109631
sequences: improve docs for map-sum.
2011-11-09 15:00:08 -08:00
Joe Groff
5a3537b90a
io.files: add file-reader, file-writer mixins
...
This lets us do some trickery so that the stream-element-type propagates from <file-reader>/<file-writer>. For #376 .
2011-11-09 14:43:39 -08:00
Joe Groff
f31fb8a968
io:read: don't resize output buffer if unnecessary
...
Even with a short-circuit test in the VM primitives, resize still has an overly high runtime cost in tight loops. For #376 .
2011-11-09 14:29:12 -08:00
Joe Groff
ed24890dce
io.backend.unix: init-signal-pipe function
...
Currently just reads off signal numbers and drops them.
2011-11-08 08:42:48 -08:00
Doug Coleman
c731dc6edb
Rename lookup to lookup-word.
2011-11-06 16:00:00 -08:00
Doug Coleman
f6353e17cd
Make the require-hook throw an error if the vocabulary does not exist in the dictionary or on disk. Move require docs to vocabs. Add unit tests for require. Fixes #339 .
2011-11-03 11:39:34 -07:00
Joe Groff
d28845a1ef
vm: reserve some more special-objects
...
Need a jit-safepoint object to deal with #332 , and ffi-signal-handler words for immediate signal handling during FFI calls
2011-11-02 22:16:08 -07:00
Doug Coleman
7699fb92b1
vocabs.loader: Fix spacing. Remove unit test.
2011-11-02 19:30:54 -07:00
Doug Coleman
1eed9203bb
Rename (load-vocab) to (require), add tags.txt for "p" vocab loader test. Code formatting.
2011-11-02 18:07:22 -07:00
Joe Groff
8cf18d1a82
remove BSD,solaris,etc. misc platform support code
2011-11-02 17:13:51 -07:00
Doug Coleman
a09a278981
Add a unit test vocabulary for vocabs.loadeer.
2011-11-02 16:47:53 -07:00
Doug Coleman
fb44adef99
Clean up formatting, rename load-vocab-hook to require-hook. Add a unit test for vocabs.loader.
2011-11-02 16:31:42 -07:00
Joe Groff
6ac8478d80
sequences: relate max, min, supremum, infimum docs
...
Suggested by @yac. Closes #321 .
2011-11-02 13:43:06 -07:00
Joe Groff
981862f35e
Revert "syntax: make it so PRIMITIVE: verifies primitives"
...
This reverts commit 200ea70cffc4bdc74a97e4981442161f64cdbaa3.
2011-11-02 13:23:11 -07:00
Joe Groff
a08ba5103a
primitives: fix effect of (clear-samples)
2011-11-02 13:23:11 -07:00
Joe Groff
5b6fb25ffd
add sampling profiler primitives for bootstrap
2011-11-02 13:23:10 -07:00
Joe Groff
c0b26a2781
syntax: make it so PRIMITIVE: verifies primitives
...
It's a bit strange for disparate vocabs to reference words that get created out of thin air during bootstrap, so this lets there be some trace in the seeded vocab source that there was a word created there.
2011-11-02 13:23:09 -07:00
Joe Groff
eac90675c0
move counting profiler to tools.profiler.counting
2011-11-02 13:23:09 -07:00
Joe Groff
33919b2919
tools.profiler: rename to tools.counting-profiler
2011-11-02 13:23:06 -07:00
Joe Groff
186bf65a00
constants for special object hardcoded literals
2011-11-02 12:54:50 -07:00
Doug Coleman
94db86a6db
Make "foo.private" require load foo instead.
...
Move require from vocabs.loader to vocabs. Update everything.
Fixes #201 .
2011-11-02 11:50:03 -07:00
Slava Pestov
f827b74a11
Move definition of 't' from syntax to bootstrap/primitives to fix bootstrap, now that 't' really has to be a class early
2011-10-31 00:24:26 -07:00
Slava Pestov
c14f0ef698
classes.union: unions of built-in types now have more efficient predicates. Fixes #292
2011-10-29 17:11:03 -07:00
Doug Coleman
dc0a921866
Remove the lexer-factory because nothing uses it. Update usages.
2011-10-29 01:11:19 -07:00
Doug Coleman
53c6d08b54
Add a toggle word to namespaces and update docs, tests, and usages. Document with-global too.
2011-10-29 01:05:38 -07:00
Doug Coleman
b43c069b81
Change prompt to something we can copy/paste back into the Factor repl. Add auto-use word. Fixes #301 .
2011-10-29 01:05:38 -07:00
Doug Coleman
aa7f22edc0
Cleanup vocab name validation. Vocab names and vocab prefixes are the same concept, and by disallowing slashes, spaces, and colon, we automatically check for absolute paths. Unit test this.
2011-10-29 01:05:37 -07:00
Joe Groff
1386212d23
vm: dispatch signal handlers through subprimitive
...
We also need to save C ABI volatile registers before calling the signal handler in order to be able to reliably resume. Add signal-handler and leaf-signal-handler subprimitives to preserve volatile registers before invoking the signal handler C function.
2011-10-27 21:18:18 -07:00
Doug Coleman
7b6f27eda6
Add a lint check for swap .. swap that can be replaced by dip. Clean up the cases it finds.
2011-10-26 13:01:04 -07:00
Doug Coleman
1882e3de3e
Use dip instead of swap swap for making file streams
2011-10-26 11:48:26 -07:00
Doug Coleman
4ebe5218c7
Update Windows for word renames, fix lint errors
2011-10-24 21:50:02 -07:00
Doug Coleman
51c033a1f6
Fix all failures in the linux64 build email
2011-10-24 19:33:09 -07:00
Doug Coleman
df64529fb5
Forget some classes after unit tests so that running "classes" test succeeds multiple times in a row
2011-10-24 16:59:46 -07:00
John Benediktsson
ea4fe562c3
vocabs.loader: actually use the root cache.
2011-10-24 16:19:59 -07:00
Doug Coleman
f9257959fd
Rename class to class-of
2011-10-24 06:47:42 -05:00
Doug Coleman
26872ffe4d
Rename vocab to lookup-vocab
2011-10-24 06:42:54 -05:00
Doug Coleman
3d65fbf1c7
Remove docs for removed word
2011-10-24 00:57:14 -05:00
Doug Coleman
2ecd513130
Factor out ``no-roots no-prefixes'' into its own word. Add load-root, load-from-root, vocabs-in-root and implement load in terms of load-from-root.
...
Add error checking for append-vocab-dir and (child-vocabs) in case someone tries to pass them the wrong parameters.
Rename: vocab-dir+ to append-vocab-dir
Document load-from-root and load-root
2011-10-23 19:59:01 -05:00
John Benediktsson
5a943b32c4
Remove stack effects from HELP: declarations.
2011-10-20 19:36:11 -07:00
John Benediktsson
beb5b9bf64
hash-sets: separate <hash-set> and >hash-set to match other containers. Fixes #154 .
2011-10-19 11:35:25 -07:00
John Benediktsson
f4a6e10818
More cleanup of unused stuff.
2011-10-19 11:01:16 -07:00
John Benediktsson
d1f5fefab0
Cleanup some uses of global [ ] bind.
2011-10-19 11:01:16 -07:00
Doug Coleman
c5cca8a6c6
Forgot using in io.tests
2011-10-19 01:16:41 -07:00
Doug Coleman
0e46502f6e
Add with-error>output word and test
2011-10-19 00:56:11 -07:00
John Benediktsson
e648ce70bb
system: fix stack effect for exit in docs.
2011-10-18 20:03:19 -07:00
Joe Groff
13b17fb84a
io: input-stream and output-stream mixins
2011-10-18 16:25:09 -07:00
Joe Groff
d61f335fee
io: error stream combinators
...
* with-error-stream(*)
* with-output+error-stream(*) -- sets output and error stream to same stream
* with-output>error -- sets output stream to error stream for scope
* with-input-output+error-streams(*) -- like with-streams, but sets output and error to same stream
2011-10-18 15:13:33 -07:00
John Benediktsson
80e1c8e3f2
Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed.
2011-10-18 13:19:39 -07:00
Joe Groff
4493d66282
io.encodings.utf16: auto-use strikes again
2011-10-17 21:46:08 -07:00
Joe Groff
67cccc63b3
formatting
2011-10-17 21:23:36 -07:00
Joe Groff
5443664df7
io.encodings.utf16: guess-*coded-length hints
2011-10-17 21:23:11 -07:00
Joe Groff
4bdef412fc
io.encodings.utf16: fast path & slow path speedups
...
Implement M: utf16[bl]e encode-string to use a fast implementation if a string is ASCII only, and do some inlining so the slow path optimizes a bit better.
2011-10-17 21:23:11 -07:00
Joe Groff
aa36db5ca8
io.streams.sequence: missed a USING:
2011-10-17 21:23:10 -07:00
Joe Groff
cd0eb76806
io: remove higher-order stack effects
...
More stack checker breakage
2011-10-17 21:23:10 -07:00
Joe Groff
0353179a92
io.streams.c: remove -seek and -tell methods
...
M: c-stream stream-seek was broken and bootstrap doesn't need it so save some code.
2011-10-17 21:23:10 -07:00
Joe Groff
e426512534
more stream-seekable? and stream-length methods
...
- limited-streams and throw-on-eof-streams
- string-readers and byte-readers
2011-10-17 21:23:09 -07:00
Joe Groff
1b0b765e82
io: document new words
2011-10-17 21:23:09 -07:00
Joe Groff
3588e6e4dc
io.streams.c: help-lint
2011-10-17 21:23:08 -07:00
Joe Groff
4d224b552f
io: stream-read-into and stream-read-partial-into
...
Safe user-facing wrappers for stream-read-unsafe.
2011-10-17 21:23:08 -07:00
Joe Groff
5627492f9b
io.encodings: stream-contents method for decoder
...
stream-contents on decoder is much faster implemented using a read1 loop than with the default implementation.
2011-10-17 21:23:07 -07:00
Joe Groff
225d10b4dd
io: stream-contents, -seekable?, -length generics
...
stream-contents is extremely slow on decoder streams when implemented with each-block, and it can be implemented very quickly for streams of known length using stream-read-unsafe. Make it generic and provide some off-the-shelf implementations using each-block, a read1 loop, or length + read-unsafe. Provide new stream-seekable? and stream-length generics that can be implemented by stream implementations that know their size.
2011-10-17 21:23:07 -07:00
Joe Groff
1c85631611
io: get variables out of stream-copy loop
2011-10-17 21:23:07 -07:00
Joe Groff
09f55f82fa
clean up forwarding stream-read-partial-unsafe
...
Now that "io" provides a method on object for stream-read-partial-unsafe that forwards to stream-read-unsafe, individual stream class that don't implement partial reads don't need to provide such a method themselves.
2011-10-17 21:23:06 -07:00
Joe Groff
805b0372da
io: default methods for extended stream protocols
...
Provide default implementations of all the input-stream methods in terms of stream-read1 and of all the output-stream methods in terms of stream-write1.
2011-10-17 21:23:06 -07:00
Joe Groff
aaec2eb1ac
io: add read-unsafe and read-partial-unsafe words
...
Add shortcut words to operate on the input-stream like the other stream methods have. Make all those words inline too just for fun.
2011-10-17 21:23:05 -07:00
Joe Groff
6f12322bda
kill noncopying-reader mixin, stream-read generic
...
Now that all streams have been updated to implement the stream-read-unsafe protocol, take out the noncopying-reader shim. Turn stream-read and stream-read-partial into plain functions over the -unsafe generics.
2011-10-17 21:23:05 -07:00
Joe Groff
d2855bbf09
io: remove each-block* because it's not useful
2011-10-17 21:23:03 -07:00
Joe Groff
5e2d95ebb2
io.encodings: decoders can't really seek or tell
2011-10-17 21:23:03 -07:00
Joe Groff
73b6648b0e
io.encodings: re-encrypt into stack-ese for core
2011-10-17 21:23:03 -07:00
Joe Groff
008ef0afd7
io.encodings: read-unsafe for decoders†
...
† currently uses locals, so not bootstrappable
2011-10-17 21:23:02 -07:00
Joe Groff
ffacdaf0da
io.encodings: encoded/decoded length hints
...
Add guess-encoded-length and guess-decoded-length generics that encodings can implement to provide hints as to how large the translation product will be, for sizing vectors and things like that.
2011-10-17 21:23:02 -07:00
Joe Groff
9082d05582
io: tweak each-block* to be byte- or char-agnostic
2011-10-17 21:23:02 -07:00
Joe Groff
d54824cb40
io: nab io.streams.peek's stream-exemplar-growable
...
Rename stream-element-examplar to stream-exemplar to match.
2011-10-17 21:23:01 -07:00
Joe Groff
8261c941c2
io: non-copying each-block and contents variants
...
each-(stream-)block* is like each-block but takes a buffer object and reads into it repeatedly. (stream-)contents* determines the stream length then does a single stream-read-unsafe into a preallocated buffers. Both functions currently only work for byte-arrays (and contents* only for seekable streams), so they can't replace the non-starred versions completely just yet.
2011-10-17 21:23:00 -07:00
Joe Groff
b79d7158be
io.streams.memory: implement stream-read-unsafe
...
(The actual method is in alien.data due to bootstrap load order issues.)
2011-10-17 21:22:59 -07:00
Joe Groff
d5f4b6f155
io.streams.sequence: change to provide read-unsafe
...
Change io.streams.sequence and its children io.streams.byte-array and io.streams.string to implement the -unsafe protocol and mixin noncopying-reader.
2011-10-17 21:22:59 -07:00
Joe Groff
66bb07bbcf
io, io.streams.c: factor noncopying-reader mixin
...
Instances of the mixin implement stream-read and stream-read-partial in terms of stream-read-unsafe and stream-read-partial-unsafe, respectively.
2011-10-17 21:22:58 -07:00
Joe Groff
2518f1c0e9
io.streams.c: Document fputc primitive
2011-10-17 21:22:58 -07:00
Joe Groff
5a072c57a6
bootstrap, io.streams.c: use new fread primitive
...
Change the fread primitive to fread-unsafe, matching the new primitive in the VM, and update the implementation of c-reader to implement stream-read-unsafe and stream-read in terms of fread-unsafe
2011-10-17 21:22:58 -07:00
Joe Groff
ef8a179f34
io: non-copying binary stream read generics
...
Add generics stream-read-unsafe and stream-read-partial-unsafe, which take a buffer pointer and return a count of bytes read instead of returning a freshly allocated byte array.
2011-10-17 21:22:57 -07:00
Doug Coleman
f21fee3b73
Rename complete-effect to scan-effect
2011-10-17 10:25:27 -07:00
John Benediktsson
81714b8dc3
More lint cleanups.
2011-10-16 19:33:16 -07:00
John Benediktsson
c8732657b7
Cleanup more lint warnings.
2011-10-16 13:01:58 -07:00
John Benediktsson
6f1c44b46d
Cleanup some lint warnings.
2011-10-15 19:19:44 -07:00
Joe Groff
9894a6ade5
continuations: document full effect of cleanup
...
We can't yet apply the effect because of #138 but we can at least document it.
2011-10-14 14:45:21 -07:00
John Benediktsson
d61de12011
Cleanup more lint warnings.
2011-10-14 12:31:46 -07:00
John Benediktsson
378786599d
Cleanup lint warnings.
2011-10-14 11:47:24 -07:00
Joe Groff
f8ec85fd06
kernel: higher-order effects for *keep
2011-10-14 10:45:02 -07:00
John Benediktsson
312704ae68
math.parser: cleanup uses of 16/8/2 >base/base>.
2011-10-14 10:09:12 -07:00
John Benediktsson
6417f36397
namespaces: adding a "with-global" word to replace "global [ ] bind".
2011-10-13 17:21:59 -07:00
John Benediktsson
7a36e50c6a
generic.parser: adding tests.
2011-10-13 16:49:54 -07:00
John Benediktsson
4558bf3414
Change method parsing to validate stack effects. Fixes #236 .
2011-10-13 16:41:17 -07:00
John Benediktsson
1987deb359
Fix M: stack effects.
2011-10-13 16:41:17 -07:00
Doug Coleman
ba7a005e88
Link ?first ?second ?last from an article.
2011-10-13 15:53:31 -07:00
John Benediktsson
4baf14972f
sequences: adding ?last for symmetry.
2011-10-13 13:04:24 -07:00
John Benediktsson
3207244c60
sequences: define ?first and ?second.
2011-10-13 12:53:46 -07:00
John Benediktsson
0075b6bc28
sequences: adding find-index.
2011-10-12 19:41:54 -07:00
John Benediktsson
afc07c0e05
io.binary: make le> and be> faster (20% and 75%, respectively).
...
Removed primitive byte-array>bignum and digit_stream_to_bignum from vm/.
2011-10-11 21:13:30 -07:00
Doug Coleman
cca76e0f6e
Rename forget-struct-slot-accessors -> forget-slot-accessors
2011-10-06 13:21:18 -07:00
John Benediktsson
7a4ffd92ed
classes.tuple: can't assume hashcode* returns fixnum.
2011-10-06 11:53:50 -07:00
John Benediktsson
3e20365cbe
Revert "sequences: change to use tuple-hashcode algorithm, make string-hashcode work like old sequence-hashcode."
...
This reverts commit 7b7b0d4542
.
2011-10-06 08:37:05 -07:00
John Benediktsson
7b76c26bc0
sequences: change to use tuple-hashcode algorithm, make string-hashcode work like old sequence-hashcode.
2011-10-05 19:22:50 -07:00
Doug Coleman
be3eebf719
Document reset-class, forget-class, forget-method. Use lookup-method in see, fix gpu.render for method->lookup-method renaming. Fixes #232 .
2011-10-04 10:40:48 -07:00
John Benediktsson
fec4cf9109
io.encodings.utf8: assume streams are largely ascii.
...
Results in 30% faster file-contents for test file and 7% faster benchmark.xml.
2011-10-03 21:49:21 -07:00
Doug Coleman
bf8bf46d16
Update docs for lookup-method.
2011-10-03 15:55:53 -07:00
Doug Coleman
181f11faa8
Make M\ throw an error upon lookup failure. Change method -> ?lookup-method, lookup-method is the throwing version of ?lookup-method. Fixes #229 .
2011-10-03 15:49:49 -07:00
Slava Pestov
dabbe35bd9
concurrency.mailboxes: linked-thread's error reporting should still work even when debugger.threads is not loaded. This addresses part of #95
2011-10-03 00:24:37 -07:00
Slava Pestov
daf40ea0c6
Fix infinite loop and empty-dlist error when an error is thrown from a callback running in a thread other than the initial thread. This addresses part of issue #92
2011-10-02 21:59:09 -07:00
John Benediktsson
baceee8c50
hashtables: moving hash-combine to hashtables.
2011-10-02 20:29:49 -07:00
Doug Coleman
8504b17aad
Rename spread>quot to deep-spread>quot, and spread>quot-shallow to shallow-spread>quot.
2011-10-02 20:25:39 -07:00
Doug Coleman
447466bf45
Clean up a parser docs as per suggestions.
2011-10-02 20:08:23 -07:00
John Benediktsson
83b11b401f
words: since word names can be tuples (i'm looking at you smalltalk), use a combining hash function inspired by boost::hash_combine.
2011-10-02 18:46:49 -07:00
Doug Coleman
38feae0e8f
Spread now infers with the correct stack effect. Make spread>quot-shallow which trims empty quotations off the head of the spread sequence. Fixes #139 .
2011-10-02 18:35:01 -07:00
John Benediktsson
3b72b641e0
Fix help-lint errors for recent hashtable changes.
2011-10-02 17:49:11 -07:00
John Benediktsson
195d5834d4
classes.tuple: switch to python's tuplehash(). Fixes #153 .
2011-10-02 13:49:45 -07:00
John Benediktsson
4ad888b530
hashtables: switch to quadratic probing.
2011-10-02 13:49:45 -07:00
John Benediktsson
98e7793799
words: prevent zero hashcodes. Fixes #222 .
2011-10-02 13:49:45 -07:00
Doug Coleman
671f19d70f
Remove all non-core uses of (scan-token)
...
Add scan-datum
Add scan-number
Document more words
Fixes #225 .
2011-10-02 12:00:08 -07:00
John Benediktsson
2a234bec02
effects: removing split-shuffle.
2011-10-02 09:26:40 -07:00
John Benediktsson
0fb43fb864
sequences: removing 2unclip-slice.
2011-10-02 09:26:20 -07:00
Doug Coleman
76580da5d5
Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.
...
CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes #183 .
Fixes #209 .
2011-09-29 11:28:28 -07:00
John Benediktsson
86923107db
classes.tuple: error-class should call-next-method before resetting itself.
2011-09-26 11:54:55 -07:00
John Benediktsson
4f42c72012
specialized-arrays: performed some cleanup.
...
Specifically,
• Created >c-array to be replacement for >T-array.
• Created cast-array to be generic replacement for all T-array-cast words.
• Created c-array@ to be generic replacement for T-array@ words.
• Replaced usages of <T-array> with T <c-array>
• Replaced usages of <direct-T-array> with T <c-direct-array>
• Replaced usages of >T-array with T >c-array
• Replaced usages of T-array-cast with T cast-array
• Replaced usages of malloc-T-array with T malloc-array.
• Removed malloc-T-array.
• Removed T-array-cast.
• Removed T-array@.
• Removed >T-array.
I also added (but didn't change any code to use):
• T c-array-type, returns T-array
• T c-array?, returns T-array?
• c-array{ T ... }, returns T-array{ ... }
Bootstraps just find on Mac OS X. Also `load-all test-all` works for me.
2011-09-26 11:37:51 -07:00
John Benediktsson
be68b9d539
assocs: improve stack effect docs for "?at".
2011-09-26 11:32:20 -07:00
John Benediktsson
f099cd5b4c
classes.tuple: adding test cases for error-class and support forget-class.
2011-09-26 11:00:32 -07:00
John Benediktsson
7ef1aecf88
Defining an "error-class", and printing error tuples out with ERROR:. See #188 .
2011-09-26 11:00:32 -07:00
Doug Coleman
82a28a082b
Remove extraneous using from math/
2011-09-25 19:32:35 -07:00
John Benediktsson
605c2b265e
vocabs: adding docs for 'parent-vocab?' and 'parent-vocabs'.
2011-09-25 18:36:20 -07:00
John Benediktsson
46df742317
vocabs: adding 'parent-vocab?' and 'parent-vocabs'.
2011-09-25 18:32:03 -07:00
John Benediktsson
a916bebcfe
Fixing docs for recent stack effects additions.
2011-09-24 22:08:54 -07:00
John Benediktsson
f6ee4c5a55
math.order: Removing stack effect (not quite right).
2011-09-23 17:46:49 -07:00
John Benediktsson
3c1356bf69
Adding stack effects.
2011-09-23 17:46:40 -07:00
Doug Coleman
c96289ef62
Fix sequences docs for change-nth stack effect and example needed using section
2011-09-21 10:09:03 -05:00
John Benediktsson
a002b7aa5f
sequences: adding stack effects for change-nth, map-integers, and interleave.
2011-09-19 20:49:57 -07:00
John Benediktsson
d142dbb456
Revert "classes.singleton: fix "summary" of singletons. Fixes #145."
...
This reverts commit d820c86974
.
2011-09-19 17:46:52 -07:00
John Benediktsson
ac75393fbd
Revert "classes.mixin: fix definitions for MIXIN:."
...
This reverts commit f625612f89
.
2011-09-19 17:46:40 -07:00
John Benediktsson
8827cbdba1
classes.mixin: fix definitions for MIXIN:.
2011-09-19 17:22:50 -07:00
John Benediktsson
46c417370f
classes.singleton: fix "summary" of singletons. Fixes #145 .
2011-09-19 16:49:11 -07:00
Joe Groff
2bd6de9a02
slots: pre-create the "at", "nth", and "global" slots to make deterministic the currently nondeterministic ambiguity between accessors:change-* and assocs:change-at, sequences:change-nth, and namespaces:change-global
2011-09-19 10:03:43 -07:00
Doug Coleman
f6bdebb36b
Revert "spread>quot now outputs empty quotations where you would expect so that things like { [ ] [ ] } spread infer as ( x x -- x x ) instead of ( -- )"
...
This causes problems in bootstrap and in make-images. Revisit sometime in the future...
This reverts commit 004b20df12
.
2011-09-18 23:41:49 -05:00
Doug Coleman
15f44a7276
spread>quot now outputs empty quotations where you would expect so that things like { [ ] [ ] } spread infer as ( x x -- x x ) instead of ( -- )
...
Fixes #139
2011-09-18 23:23:53 -05:00
Doug Coleman
bf2a96e9e0
Remove Windows CE from core/ basis/ and build-support/
...
Rename the winnt singleton to windows in core/ basis/ extra/
Rename boot images winnt -> windows
Fixes #84 .
2011-09-18 23:19:06 -05:00
John Benediktsson
e8dad98240
sets: update docs for "combine".
2011-09-17 08:14:14 -07:00
John Benediktsson
842327f3df
lexer: more clear code.
2011-09-17 08:14:13 -07:00
John Benediktsson
c77611f07b
assocs: adding tests for "assoc-stack".
2011-09-17 08:14:13 -07:00
Joe Groff
8e36e0221d
words: move change-word-prop from delegate.private to words
2011-09-15 15:55:54 -07:00
Joe Groff
a5788c4205
alien.strings: handle symbol arrays in symbol>string
2011-09-13 15:10:48 -07:00
Doug Coleman
7e6d031cc8
Fix string docs.
2011-09-13 15:45:56 -05:00
Slava Pestov
7c3827190b
Tease out symbol name and library in undefined_symbol() handler, for friendlier errors when calling an unresolved C function name. Fixes #93
2011-09-12 00:56:24 -07:00
Doug Coleman
1b20b0c476
Make sure 0 read always returns f. Fixes issue #70 .
...
More unit tests, fix read-until to return f f sometimes
Rename ((read-until)) to read-until-loop. Fix the stack effect declarations of (read) and handle-readln.
2011-09-09 18:51:06 -07:00
Doug Coleman
035cc310d9
Fix for parser-notes? being removed
2011-09-07 04:59:35 -05:00
Doug Coleman
5fce2d0f27
Make "quiet" true by default. Disable quiet mode for listener, bootstrap, and deploy tool.
...
Move "quiet" to parser-quiet? in parser.notes. Change a few places where quiet was handle wrong.
2011-09-06 17:58:12 -07:00
John Benediktsson
29f6011817
hash-sets: remove unused import.
2011-09-06 11:26:29 -07:00
Slava Pestov
9c29511eb4
Add test case to memory-tests.factor for recent large object allocation bug
2011-09-05 16:47:32 -07:00
Slava Pestov
ed9cf9e4fd
Move some primitives from memory and memory.private to tools.memory.private, add data-heap and code-heap words that wrap the struct for you
2011-09-05 16:47:29 -07:00
John Benediktsson
e8aa41ae57
hash-sets: simpler <hash-set>.
2011-09-03 16:38:42 -07:00
John Benediktsson
21c30b37ee
sets: adding test for cardinality of arrays.
2011-09-03 16:34:33 -07:00
John Benediktsson
f2aa8ec876
hash-sets: initialize hashtable capacity to length of sequence.
2011-09-03 14:46:26 -07:00
John Benediktsson
c99e6d79cd
math: fix docs for 'when-zero'.
2011-09-02 21:13:29 -07:00
John Benediktsson
e2cca82fca
sets: fix cardinality of sequences, and speed up subset?.
2011-08-27 20:20:56 -07:00
John Benediktsson
cc68afddce
Merge remote-tracking branch 'factorcode/master'
2011-08-27 17:26:11 -07:00
Joe Groff
9040ee37e0
Merge remote-tracking branch 'Blei/gtk-image-loader'
...
Conflicts:
basis/alien/enums/enums-tests.factor
basis/alien/enums/enums.factor
basis/alien/parser/parser.factor
basis/gdk/pixbuf/ffi/ffi.factor
basis/glib/ffi/ffi.factor
basis/tools/deploy/shaker/shaker.factor
basis/ui/backend/gtk/gtk.factor
basis/windows/nt/nt.factor
2011-08-27 14:07:18 -07:00
John Benediktsson
e5b6e46702
parser: fix a typo in the docs.
2011-08-26 21:07:16 -07:00
John Benediktsson
f1e51fa4ef
Merge remote-tracking branch 'erg/master'
2011-08-26 18:53:58 -07:00
John Benediktsson
e026eb0db4
Merge branch 'cleanup'
2011-08-26 18:49:25 -07:00
John Benediktsson
9f34c9c676
Spelling fixes to documentation.
2011-08-26 16:20:31 -07:00
Doug Coleman
80618ef403
Add a bunch of unit tests for 100% code coverage in sets vocab
2011-08-26 15:03:55 -05:00
Doug Coleman
7432797251
Fix unit test in strings
2011-08-25 11:10:40 -07:00
Slava Pestov
a5e70d2e78
strings: fix broken unit tests introduced by recent commit
2011-08-24 23:42:33 -07:00
Doug Coleman
b584b9466c
Rearrange sets-tests in order the words are defined, remove duplicate test, add a test.
2011-08-24 17:55:05 -07:00
Jon Harper
58405ae6ba
sequences, fix stack effect of (accumulate)
2011-08-25 00:43:37 +02:00
Doug Coleman
539d34fd23
Fix help lint for when*,unless*
2011-08-23 12:28:16 -07:00
Doug Coleman
46dac71d45
Merge git://factorcode.org/git/factor
2011-08-17 22:07:57 -07:00
Joe Groff
d711824c10
command-line, parser, syntax: move the MAIN: invocation from run-file to run-script to minimize the potential impact on internal machinery that uses run-file
2011-08-17 21:29:02 -07:00
Joe Groff
e1390875ca
parser, source-files, syntax: have MAIN: store the main entry point in the source-file record in addition to the vocabulary. Have run-file execute the MAIN: word for a file if present after evaluating its contents.
2011-08-17 20:58:09 -07:00
Doug Coleman
e6154acc96
subset? was broken...
2011-08-16 14:19:24 -07:00
John Benediktsson
1def8141bd
combinators: fix typo in docs for case.
2011-08-10 16:25:21 -07:00
Joe Groff
8feb6c68e2
kernel: add full stack effects to unless, when, when*, unless* so they give useful stack imbalance errors
2011-08-09 10:32:12 -07:00
Joe Groff
62332cfa17
strings: a few more peace-of-mind tests setting out-of-range code points in strings
2011-07-20 13:52:42 -07:00
Joe Groff
bd56ab985e
strings: the fast path for set-string-nth was being used inappropriately for negative numbers. use the fast path only for Z ∩ [0, 127]
2011-07-20 10:21:11 -07:00
Erik Charlebois
64252dbdbc
32 and 64 bit Linux PPC support
2011-05-23 23:36:14 -04:00
Erik Charlebois
305dcf1551
Use .factor-rc etc on Windows too, files can begin with dots just fine
2011-05-23 23:36:13 -04:00
John Benediktsson
ef98730827
Merge branch 'master' into sorting
2011-05-03 20:51:53 -07:00
Slava Pestov
c36d73e242
Change do-callback to register the current thread with the callback, instead of busy waiting for the current callback to become the right one before returning. Fixes 100% CPU usage issue with system-alert. Thanks to Blei and ex-rzr for doing preliminary analysis of the issue
2011-04-12 21:48:54 -04:00
John Benediktsson
d58bc08aa0
Update code that did ">alist sort-" to just "sort-".
2011-04-07 09:01:21 -07:00
John Benediktsson
9efa64831f
sorting: change sort-keys and sort-values to generics.
2011-04-07 08:57:26 -07:00
otoburb
b9c17fd329
Merge branch 'master' of git://github.com/slavapestov/factor
2011-04-04 13:04:00 +00:00
Slava Pestov
1c359f8d7a
io: fix help lint
2011-04-03 17:37:28 -07:00
otoburb
906e6f73dc
Merge branch 'master' of git://factorcode.org/git/factor
2011-03-26 20:19:52 +00:00
John Benediktsson
f9ccaf37ec
io: improve stack effects.
2011-03-25 18:30:52 -07:00
John Benediktsson
3523d24785
io: implement "stream-contents" in terms of "each-stream-block".
2011-03-25 13:58:16 -07:00
John Benediktsson
69ec12c2dc
io: improve signature of each-block and each-line.
2011-03-25 12:20:51 -07:00
otoburb
107d9dd385
Tuple subclassing help article: Fixed typo
2011-03-24 04:48:48 +00:00
otoburb
8c680aa06f
Checksums help article update: Added internet checksums brief description
2011-03-23 03:51:55 +00:00
otoburb
aafc885060
Typo in "make.factor" documentation
2011-03-14 06:07:32 +00:00
Joe Groff
cefb541c33
kernel: add a note to the documentation for "dip" and "if" that they are primitive for certain arguments
2011-03-07 09:28:51 -08:00
Slava Pestov
c0de0ac15f
Merge branch 'doc-fixes' of git://github.com/keitahaga/factor
2011-02-25 22:37:39 -08:00
Slava Pestov
836743b25b
combinators: fix help lint
2011-02-25 21:06:10 -08:00
Keita Haga
f515dd2cfc
definitions: remove unused vocabulary in refactored a.factor
2011-02-24 15:37:41 +09:00
Keita Haga
42ef23feed
definitions: import of make vocab in refactored a.factor
2011-02-20 04:53:35 +09:00
Keita Haga
073eda332a
In several documentation, remove whitespace before or after the colon or period
2011-02-10 01:51:13 +09:00
Keita Haga
27f1abd70e
assocs: fix a few typos in docs
2011-02-08 00:35:15 +09:00
Keita Haga
a7665bc7fe
continuations: fix typo in docs
2011-02-07 23:42:44 +09:00
Keita Haga
65de18993b
syntax: add stack effect declaration to <color> word definition in usage example of C: syntax
2011-02-07 23:00:30 +09:00
Keita Haga
19eb5d9689
combinators: insert a space after a comma in the documentation
2011-02-04 21:04:08 +09:00
Keita Haga
c997e43ca8
combinators: minor improvement to usage example of cond word
2011-02-04 17:53:00 +09:00
Keita Haga
65773e520d
words: replace the trailing comma with a period in the article of words
2011-02-04 16:25:35 +09:00
Keita Haga
16d524802a
syntax: trim trailing whitespace to $syntax section in the HOOK:'s help page
2011-02-04 15:56:02 +09:00
Slava Pestov
c2aca44b4a
sequences: nths should return a sequence of the same type as the original (reported by Jon Harper)
2011-01-29 00:18:36 -05:00
Slava Pestov
6147460225
sets: fix help lint
2011-01-29 00:07:08 -05:00
Slava Pestov
0b52600143
sets: document combine word
2011-01-28 22:56:46 -05:00
Slava Pestov
d2b20ddb35
Merge branch 'master' of git://github.com/mrjbq7/factor
2011-01-28 21:56:18 -05:00
John Benediktsson
ac950d8bd7
sets: improve stack effect for "combine".
2011-01-26 17:24:55 -08:00
Keita Haga
a2ad751f83
classes.tuple: minor fix to $errors section in the boa word's help page
2011-01-26 21:26:12 +09:00
Keita Haga
334d0de92a
sequences: surround a $example with a $examples to the if-empty word's help
2011-01-26 15:06:35 +09:00
Keita Haga
2a6e6517a0
effects: add missing right parenthesis in description of stack-effect word
2011-01-23 21:51:52 +09:00
Keita Haga
a2da8f77db
assocs: fix description of inputs and outputs values in many words
2011-01-17 18:26:20 +09:00
Keita Haga
9e25c9d5ae
assocs: correct the class of output value in assoc-subset? word
2011-01-17 17:35:07 +09:00
Keita Haga
9615a167ba
assocs: fix sample output in usage example of assoc-map word
2011-01-17 05:32:08 +09:00
Keita Haga
db14fff1ae
combinators: minor improvement in usage example of case word
2011-01-17 00:42:07 +09:00
Keita Haga
8d2ceda8f3
assocs, math.bitwise: remove first blank line and useless whitespace in a few usage examples
2011-01-17 00:12:28 +09:00
Keita Haga
fc048b6336
kernel: add stack effect declaration to usage example of object class in docs
2011-01-16 17:58:36 +09:00
Keita Haga
5e813eb6f2
sequences: put a period to description of trim-head-slice word
2011-01-16 09:59:27 +09:00
Keita Haga
ac67370e15
io.pathnames: enclose a few example outputs in double quote characters
2011-01-14 20:07:10 +09:00
Keita Haga
5efbf43690
alien: fix a couple of typos in docs
2011-01-14 19:59:14 +09:00
Keita Haga
fd8bea65f6
sequences: enclose some $examples in '$examples'
2011-01-14 19:29:17 +09:00
Keita Haga
3aaf58a3dd
math: fix typo in docs
2011-01-09 02:29:33 +09:00
Keita Haga
57a5dff72b
sbufs: fix typo in docs
2011-01-08 22:37:58 +09:00
Keita Haga
1aaa0409a1
continuations, io.binary: add whitespace between '"' and '{ $snippet' in the documentation
2011-01-08 22:26:06 +09:00
Slava Pestov
2373dc4b4f
Merge branch 'doc-fixes' of git://github.com/keitahaga/factor
2011-01-05 20:27:55 -08:00
John Benediktsson
93dd955f4a
Merge branch 'master' of git://github.com/slavapestov/factor into fast-sets
2011-01-05 17:30:48 -08:00
John Benediktsson
6c2c5c0a82
assocs: use assoc-size to short-circuit equality checks.
2011-01-05 17:28:06 -08:00
Keita Haga
d5fe4fecc1
remove useless whitespace in several documentation
2011-01-05 15:55:34 +09:00
Keita Haga
4645e409c3
sequences: fix typos in docs
2011-01-05 14:01:11 +09:00
Keita Haga
fe86e485f2
source-files: fix typo to record-checksum word description in docs
2011-01-05 02:10:19 +09:00
Keita Haga
58c0a3835b
effects: fix typo in docs
2011-01-04 21:30:37 +09:00
Keita Haga
8f92ca2d47
classes.algebra, grouping, parser: replace 'seqence' with 'sequence' in docs
2011-01-04 21:02:11 +09:00
Keita Haga
9b15b30ddb
combinators: fix typo to 'booleans' article and 'case' description in docs
2011-01-04 19:18:56 +09:00
Keita Haga
c1bca1e2c9
io: fix typo in docs
2011-01-04 18:12:43 +09:00
John Benediktsson
a23c8a3711
sets: minor optimization.
2011-01-03 20:36:48 -08:00
John Benediktsson
19a1607804
sets: make intersect, intersects?, and subset? faster.
2010-12-29 04:53:22 -08:00
Slava Pestov
3c73e53db3
sets, bit-sets: cleanups
2010-12-27 20:10:37 -08:00
John Benediktsson
7ee7f41334
sets: improving the speed of set=.
2010-12-27 19:33:18 -08:00
John Benediktsson
47faf5f6ae
sets: adding cardinality word.
2010-12-27 19:22:36 -08:00
Slava Pestov
b0732bcb22
Fix unit test failures caused by alien.data change
2010-12-25 22:34:12 -08:00
Keita Haga
c3189054d1
io.files.info.unix, sequences: few $examples and $unchecked-examples turn into $codes
2010-12-23 04:05:06 +09:00
Keita Haga
dcb387630b
sequences, syntax, vocabs.parser: remove useless whitespace in docs
2010-12-23 03:42:41 +09:00
Slava Pestov
f4c6b868ac
Merge branch 'doc-fixes' of git://github.com/keitahaga/factor
2010-12-18 16:02:18 -08:00
Slava Pestov
bb4529bff2
math.integers: fix underflow and overflow behavior
2010-12-18 16:00:17 -08:00
Keita Haga
34a9b93458
syntax: slightly to fix examples of QUALIFIED: and QUALIFIED-WITH:
2010-12-19 01:16:54 +09:00
Keita Haga
f0d22c7162
classes.tuple: minor fixes in tuple-examples article
2010-12-05 21:27:25 +09:00
Keita Haga
04a70e0476
generic: fix using to M\ example in docs
2010-12-05 05:11:38 +09:00
Slava Pestov
6f0375b3ba
Merge branch 'doc-fixes' of git://github.com/keitahaga/factor
2010-12-01 03:02:38 -08:00
Keita Haga
18811fb04a
io.pathnames: fix typo in docs
2010-11-28 00:47:59 +09:00
Slava Pestov
f27080498d
Remove bignum>float VM primitive, and use bignum/f to implement >float on bignums instead, for a slight accuracy gain. Also, bignum/f now has a more efficient post-scaling algorithm to break the circular dependency on bignum>float
2010-11-24 22:41:15 -08:00
Keita Haga
1270167513
vocabs: fix typo in docs
2010-11-14 17:14:40 +09:00
Slava Pestov
0c840a7965
math.integers: bignum/f rounding was wrong (reported by Joe Groff)
2010-11-13 16:02:12 -08:00
Slava Pestov
65dcd56b0b
math.integers: fix 0 0 bignum/f (reported by Joe Groff)
2010-11-12 19:49:18 -08:00
Slava Pestov
5cbf730517
splitting: fix stack effect declaration of (split)
2010-11-06 17:50:39 -07:00
Samuel Tardieu
b1a2570655
Add documentation for assocs:assoc-refine
2010-10-11 11:09:46 +02:00
Slava Pestov
fbbaef70c4
Remove stream-peek and stream-peek1, re-implement dns vocab to not need this abstraction
2010-10-08 18:55:13 -07:00
Doug Coleman
d462355035
Implement and document stream-peek
2010-10-08 06:34:19 -07:00
Doug Coleman
f7af445625
Add stream-peek1 and remove it from images.gif and dns. Add sequence-peek but not stream-peek (yet?)
2010-10-08 06:34:17 -07:00
Slava Pestov
28eb59824d
io: fix with-streams to dispose the output stream first, move (stream-seek) word to io.streams.sequence where it belongs
2010-09-12 22:07:23 -07:00
Doug Coleman
fb9f1de3e4
Fix with-streams: if the first dispose throws an error, the second dispose never gets called
2010-09-12 00:26:14 -05:00
Doug Coleman
fe1daf4e08
Fix throw-restarts example
2010-09-11 19:41:06 -05:00
John Benediktsson
0b47a6b959
sequences: fix typo in docs.
2010-09-10 13:22:48 -07:00
Slava Pestov
0ed6c00a48
Merge branch 'docs-linearization-typo' of http://github.com/mncharity/factor
2010-09-09 20:33:11 -07:00
Mitchell N Charity
8a269f56a4
algebra-docs: fix a typo
2010-09-09 17:39:11 -04:00
Doug Coleman
4b6946da45
Rename append-path-naive to append-relative-path, fix bugs to support Firefox FTP again
2010-09-05 00:40:47 -05:00
Doug Coleman
0ec1a89f54
If ftp clients send a path starting with /, treat it as a path relative to the serving directory. Expose absolute-path? and append-path-naive in io.pathnames to implement this change.
2010-09-04 22:16:57 -05:00
Slava Pestov
d2cf2d8f92
Rename get-fpu-state entry point to fpu-state, and fix stack-checker unit tests
2010-09-04 12:58:59 -07:00
Slava Pestov
1818bcb780
Fix three problems discovered by running math.floats.env tests in a loop:
...
- Crash if allocating error triggers a GC from a signal/SEH handler
- Crash if GC runs with floating point traps enabled on Windows
- Floating point traps didn't prettyprint properly
2010-09-02 22:57:14 -05:00
Slava Pestov
261e55a918
serialize, io.streams.byte-array: fix unit tests for utf8 encoding strictness
2010-08-25 17:51:44 -07:00
Slava Pestov
06f4934571
io.encodings.utf8: formatting fix
2010-08-25 17:47:26 -07:00
Joe Groff
c32760cc1d
io.encodings.utf8: also guard against decoding code points > 0x10FFFF
2010-08-25 09:28:39 -07:00
Joe Groff
fc6e308d7a
io.encodings.utf8: guard against decoding overlong encodings
2010-08-25 09:18:33 -07:00
Slava Pestov
76d2b83685
Add unless-disposed combinator to clean up some repetition, and fix bogus error reported from timer thread if an I/O operation with a set timeout fails on Windows
2010-08-23 21:12:24 -05:00
Slava Pestov
8507bd1fce
generic.single: fix bug where dynamic and static dispatch didn't co-incide (reported by Mitchell N. Charity and others)
2010-08-21 18:12:00 -07:00
Slava Pestov
30dea58330
classes: remove fragile unit test
2010-08-21 18:10:09 -07:00
Slava Pestov
0d6f3354ab
generic: clean up unit tests a bit
2010-08-21 13:04:37 -07:00
Slava Pestov
d2dd184d58
Officially drop PowerPC port
2010-08-15 20:10:11 -07:00
Philipp Brüschweiler
f36d351012
slots: use em dashes
2010-08-14 18:27:30 +02:00
Joe Groff
88fb562f3a
Merge remote branch 'Blei/master'
2010-08-14 09:20:15 -07:00
Slava Pestov
1985705413
compiler: now that FFI has been deconcatenatized, we no longer need the special ##unary-float-function and ##binary-float-function fastpaths
2010-08-13 23:59:19 -07:00
Philipp Brüschweiler
71ee9d5197
slots: the docs for writer used obsolete (>>slot) syntax
2010-08-13 23:50:10 +02:00
Slava Pestov
fd1aad71bd
combinators: make the behavior of 'case' consistent between the optimized and unoptimized forms
2010-07-30 14:21:30 -04:00
Slava Pestov
0f4c5d2bff
classes.algebra: make it work better to fix bug reported by Sascha Matzke
2010-07-29 19:57:23 -04:00
Slava Pestov
168dd1f825
FFI rewrite part 7: compile callback bodies with the optimizing compiler
2010-07-28 00:49:26 -04:00
Philipp Brüschweiler
ab29ed3892
Merge branch 'gtk' into gtk-image-loader
2010-07-26 19:29:17 +02:00
Slava Pestov
c04de94b96
compiler.tree.finalization: record dependencies on inlined predicates
2010-07-23 16:31:15 -07:00
Philipp Brüschweiler
39d475e996
ui.backend.gtk: use png instead of ico to represent icons
2010-07-22 22:48:18 +02:00
Philipp Brüschweiler
035ba3bc93
ui.backend.gtk, tools.deploy.unix: support for icons
2010-07-22 12:39:16 +02:00
Doug Coleman
e752b4ff62
Clean up vocabulary list, remove unused/poorly-named word from io
2010-07-09 13:32:09 -05:00
Slava Pestov
cac139297d
parser: update unit test
2010-07-08 15:41:28 -04:00
Slava Pestov
01d67104f6
io.ports: fix stream-seek with seek-relative seek type (reported by Joe Groff)
2010-07-07 17:32:30 -04:00
Slava Pestov
a7384d5de6
io.ports: fix stream-tell implementation
2010-07-07 02:27:34 -04:00
Slava Pestov
8a0525e5ce
Add a scan-token word which is like scan, except throws an error on EOF; document scan-object word; mention that scan-token/scan-object are preferred over scan/scan-word
2010-07-06 16:20:08 -04:00
Slava Pestov
5ae75af6a8
Clarify documentation for resize-array, resize-byte-array, resize-string words, and remove flushable declaration since technically they don't satisfy the flushable contract (reported by Daniel Ehrenberg)
2010-06-22 15:48:48 -04:00
Doug Coleman
0edadff45f
remove system-micros word from factor src tree
2010-06-22 01:49:11 -05:00
Doug Coleman
3b11e2d6aa
Normalize vocabulary roots by removing the last path separator so that scaffold tool works with trailing separators
2010-06-21 13:06:09 -05:00
Doug Coleman
e8d528ad93
Remove system_micros from vm, implement gmt hook on windows
2010-06-16 23:39:16 -05:00
Slava Pestov
71cc16df2a
vocabs.loader: tweak docs
2010-06-13 18:12:57 -04:00
Doug Coleman
bd0a27c18e
Sets docs -- testing set membership: member? -> in?
2010-06-05 18:55:46 -05:00
Slava Pestov
58c95296f2
combinators: tweak docs
2010-06-03 21:34:55 -04:00
Slava Pestov
f78bbb865e
vocabs.refresh.monitor: spin off new monitor threads when add-vocab-root is called. Fixes a problem where depending on the order of startup hooks, refresh-all would sometimes be broken for custom vocab roots
2010-05-31 20:14:54 -04:00
Doug Coleman
6b24617bac
Fix typo in stack effect docs
2010-05-21 12:48:04 -05:00
Slava Pestov
f31c579b7b
io.files: fix unit test
2010-05-19 20:47:22 -04:00
Slava Pestov
cb25591d36
io: missed a few byte-array>int-array in unit tests
2010-05-19 16:22:39 -04:00
Joe Groff
65e220b645
syntax: correct documentation for ratio syntax
2010-05-18 18:59:54 -07:00
Joe Groff
1196087991
math: declare quotation stack effects on each-integer, times, find-integer, all-integers?
2010-05-13 14:30:19 -07:00
Slava Pestov
67b82a2509
sequences: remove unused 2reverse-each word
2010-05-10 00:46:29 -04:00
Slava Pestov
627295f094
Language change: tuple slot setter words with stack effect ( value object -- ) are now named FOO<< instead of (>>FOO)
2010-05-06 17:21:02 -04:00
Doug Coleman
23b3535053
Fix typo in between? stack effect docs
2010-05-05 18:16:54 -05:00
Slava Pestov
7f6ae34d72
Updating tests for recent compiler changes
2010-05-03 17:34:30 -04:00
Slava Pestov
e436ae7314
continuations: keep original error when throwing wrapped errors as well, for easier debugging of bootstrap failures
2010-05-03 17:34:22 -04:00
Slava Pestov
a9ccfa8f05
strings: move string-nth primitive out of the VM and into the library
2010-05-03 17:34:12 -04:00
Joe Groff
0b025c61fc
kernel: update *dip docs to match stack effects and not mention retain stack
2010-05-01 17:03:03 -07:00
Slava Pestov
5ac954b154
vocabs: add a link to the parse-time word lookup article
2010-04-28 05:04:09 -04:00
Daniel Ehrenberg
c5530080c4
Fixing issue where require-when could create a circularity
2010-04-21 00:40:40 -05:00
Doug Coleman
366ce2896f
Add callstack-bounds primitive to vm/ for use with javascriptcore library
2010-04-19 20:08:15 -05:00
Slava Pestov
703ff5385d
Merge branch 'require-when' of git://github.com/littledan/Factor
2010-04-19 14:06:52 -05:00
Slava Pestov
2eda6fc6aa
io.encodings: add a fast-path for ascii, utf8 and 8-bit encodings when string only contains ASCII characters
2010-04-19 01:14:00 -05:00
Daniel Ehrenberg
26c3bf2611
Adding docs on null? and the changes for require-when
2010-04-18 14:44:52 -05:00
Daniel Ehrenberg
099ffa1f5e
Fixing require-when
2010-04-18 14:08:21 -05:00
Daniel Ehrenberg
00176e7bd1
Attempting to make require-when work with multiple vocabs
2010-04-17 17:19:37 -05:00
Daniel Ehrenberg
265fe6208f
Adding null? word to test if a set is empty
2010-04-17 16:25:51 -05:00
Slava Pestov
c1a870fe72
sequences: remove stupid <flat-slice> word
2010-04-17 00:58:30 -05:00
Slava Pestov
f40b313be5
sequences: 'accumulate' now outputs a sequence of the same type as its input
2010-04-14 21:51:00 -07:00
Joe Groff
4aa62ffb24
Merge branch 'master' of factorcode.org:/git/factor
2010-04-14 19:37:54 -07:00
Joe Groff
54015782f3
document FUNCTION-ALIAS:
2010-04-14 16:14:33 -07:00
Joe Groff
b4867f4a1c
assocs: add effect declarations to assoc combinators
2010-04-14 15:08:32 -07:00
Slava Pestov
288090d993
math.parser: expose a format-float primitive for use by formatting vocabulary
2010-04-13 21:21:28 -07:00
Slava Pestov
da6bcbedfc
Replace 'untested' tag with 'not loaded' and 'not tested' tags
2010-04-13 18:43:01 -07:00
Slava Pestov
a3e6de5e6a
io.files: fix unit test for forget-tests? flag
2010-04-13 06:14:53 -07:00
Slava Pestov
3e91a7f280
sets: fix performance regression in all-unique? word
2010-04-13 04:43:47 -07:00
Slava Pestov
67e24b1d2a
compiler.codegen: need to do name decoration with fastcall as well
2010-04-12 18:10:25 -05:00
Slava Pestov
145e6428ba
Fixing load errors
2010-04-10 17:24:44 -07:00
Slava Pestov
0202c35d2a
alien: now that fastcall works better it doesn't need to be private
2010-04-10 16:57:07 -07:00
Slava Pestov
46a1fb2646
Merge remote branch 'origin/abi-symbols' into fastcall-madness
2010-04-10 00:10:33 -07:00
Slava Pestov
0d00160f4c
combinators: fix load error
2010-04-06 16:48:30 -04:00
Slava Pestov
e0196da1c8
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
c3f8f5067e
catch merge conflicts in source and report them as such
2010-04-06 13:34:26 -07:00
Joe Groff
3e0d86f355
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
d6fb134d5f
kernel: add examples for if, when, unless and if*
2010-04-05 19:07:10 -04:00
Slava Pestov
74640b7f71
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
be024c228c
continuations: faster with-datastack
2010-04-03 19:10:21 -04:00
Joe Groff
2240520e2d
update some more doc examples using old abi strings
2010-04-02 23:16:53 -07:00
Slava Pestov
0faa3bcf4a
vm: pre-allocate context alien
2010-04-02 00:02:21 -04:00
Joe Groff
c12424f834
update alien docs to mention abi symbols
2010-04-01 19:25:24 -07:00
Joe Groff
553b9fcd93
make "fastcall" symbol private since it doesn't really work in all cases
2010-04-01 18:34:15 -07:00
Joe Groff
ef884ef7f2
Merge branch 'master' into abi-symbols
2010-04-01 15:28:36 -07:00
Joe Groff
9d3326658c
alien: add singletons for thiscall and fastcall
2010-03-31 20:30:04 -07:00
Joe Groff
565e3383ab
add singletons for stdcall, cdecl, mingw abis
2010-03-31 19:17:06 -07:00
Slava Pestov
fb2ecab614
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
c36d85ab47
sets, hash-sets, bit-sets: fix some typos in the documentation
2010-03-30 01:10:39 -04:00
Slava Pestov
c7142e4281
threads: use context-switching primitives
2010-03-29 20:40:17 -04:00
Slava Pestov
8ab0d12e8d
vm: callstack errors were flipped
2010-03-29 01:53:30 -04:00
Daniel Ehrenberg
240c6819a9
Merge branch 'master' into conditional
2010-03-28 19:49:32 -04:00
Slava Pestov
43ac59a9f4
kernel: don't test callstack overflow on OpenBSD or Windows
2010-03-28 17:58:05 -05:00
Slava Pestov
b6dfdcb909
set-context and start-context primitives can now pass parameters around
2010-03-27 08:13:57 -04:00
Slava Pestov
b5f7e91bdc
vm: report callstack overflow
2010-03-27 07:45:11 -04:00
Slava Pestov
1717b8d0f7
Implement start-context and set-context primitives
2010-03-27 02:56:11 -04:00
Slava Pestov
560c119cd2
vm: actually use context callstacks when running code
2010-03-26 22:44:43 -04:00
Slava Pestov
dde21c3cc4
lexer: fix output type of map-tokens
2010-03-26 16:31:48 -04:00
Slava Pestov
a566d8cc6b
lexer: each-token and map-tokens did not handle EOF properly
2010-03-26 03:42:07 -04:00
Daniel Ehrenberg
887c289c6c
Merge branch 'master' of git://factorcode.org/git/factor into conditional
2010-03-19 06:46:16 -04:00
Daniel Ehrenberg
7dd44bfccf
Docs for require-when
2010-03-19 06:45:55 -04:00
Daniel Ehrenberg
bcba3ab5ec
Untested tags for vocabs.loader.test.[mno]
2010-03-19 06:34:25 -04:00
Slava Pestov
6aee6b3adc
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
9e602d213f
Renaming require-if to require-when
2010-03-18 00:24:41 -04:00
Daniel Ehrenberg
043578ca1d
require-if loads vocabs conditionally, now or later
2010-03-18 00:00:32 -04:00
Daniel Ehrenberg
67912db5f1
Making <hash-set> faster
2010-03-17 20:12:25 -04:00
Daniel Ehrenberg
7fcc03b8b6
Fixing spacing in the sets docs
2010-03-16 21:30:17 -04:00
Daniel Ehrenberg
1da6ea957a
Fixing bugs with sets, including adding new within and without words
2010-03-16 20:17:26 -04:00
Daniel Ehrenberg
512fe14e4e
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
0d3015cd1c
fill out row variables docs
2010-03-11 11:57:12 -08:00
Joe Groff
64c064fb3e
another typo in effects syntax
2010-03-11 11:23:48 -08:00
Joe Groff
5bccc96498
typo in <effect> docs
2010-03-11 11:22:28 -08:00
Joe Groff
c35dd7c2ef
make effect<= work with univariable stack effects, deny all bivariable stack effects
2010-03-11 01:37:33 -08:00
Joe Groff
8b1b7b20d5
effect-variable -> row-variable
2010-03-11 01:25:13 -08:00
Joe Groff
d001c1f375
carve up effects.parser too
2010-03-11 01:03:40 -08:00
Joe Groff
6bf709429b
fix effect of <tuple-boa> primitive
2010-03-09 22:38:41 -08:00
Joe Groff
18f3df9d4a
more help-lint
2010-03-09 21:02:43 -08:00
Joe Groff
b9004a4fff
fix up sequences help-lint
2010-03-09 20:29:44 -08:00
Joe Groff
8a52aec6da
effects: docs for <effect>, <terminated-effect>, <variable-effect>
2010-03-09 13:50:58 -08:00
Joe Groff
e7968ceffc
mop up compiler errors from macosx load-all
2010-03-09 00:56:07 -08:00
Joe Groff
191ac353fd
generalize stack effects so we can bootstrap with the stricter stack effect checking
2010-03-08 23:38:10 -08:00
Joe Groff
10ca2ba695
add polymorphic effects for lexer:each-token, map-tokens
2010-03-08 18:55:46 -08:00
Joe Groff
cb656c6e6b
add polymorphic stack effects to continuations:recover, attempt-all
2010-03-08 18:36:40 -08:00
Joe Groff
5597ee691f
add documentation about stack effect variable syntax and the effect on the stack checker
2010-03-08 17:17:47 -08:00
Joe Groff
e5c2344ce4
sequences: effects of push-if and push-either were too strict
2010-03-07 21:56:40 -08:00
Joe Groff
83c81b288f
polymorphize splitting private combinators
2010-03-07 18:07:59 -08:00
Joe Groff
17df15280e
generalize stack effect of while, until, and produce
2010-03-05 23:01:22 -08:00
Joe Groff
a3033e885a
make effect variables part of effect syntax, stored out of band in effect tuple
2010-03-05 13:30:10 -08:00
Joe Groff
85f30987e2
spray some polymorphic stack effects on kernel, math, and sequences
2010-03-05 00:21:10 -08:00
Joe Groff
afaaf30679
Merge branch 'lexer-parsing-word-errors'
2010-03-02 20:46:23 -08:00
Daniel Ehrenberg
7364608417
Merge branch 'master' of git://factorcode.org/git/factor into bags
2010-03-02 17:04:45 -05:00
Joe Groff
ac979619e6
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
2c5deba1d1
parse-tokens had two $notes sections. oops!
2010-03-01 11:50:16 -08:00
Joe Groff
51541bb35b
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
9bf5c76771
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
bb58cf4d16
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
163c26ad72
lexer, parser: show initial parsing word line as part of lexer-errors
2010-02-28 13:01:03 -08:00
Daniel Ehrenberg
da57436180
Finishing eliminating prune as a synonym of members
2010-02-27 14:52:24 -05:00
Daniel Ehrenberg
7ad324837b
Updated documentation for sets
2010-02-27 00:27:40 -05:00
Daniel Ehrenberg
7cd3360cdd
Fixing ambiguity between sets and namespaces in many unit tests and furnace.auth
2010-02-26 17:17:40 -05:00
Daniel Ehrenberg
6298203b4c
Making all of basis and extra unambiguous for sets/namespaces
2010-02-26 16:28:38 -05:00
Daniel Ehrenberg
7074979745
Moving new-sets to sets
2010-02-26 16:01:01 -05:00
Daniel Ehrenberg
73a990a4b8
Making it fast to create a new hashset
2010-02-26 13:24:26 -05:00
Daniel Ehrenberg
366f36d73f
Finishing porting sets features to new-sets
2010-02-26 13:22:56 -05:00
Daniel Ehrenberg
b76c82048d
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
e43312d780
Moving new-sets and hash-sets to core
2010-02-26 11:01:57 -05:00
Slava Pestov
86b7ba95a8
sequences: fix help lint
2010-02-26 00:44:48 +13:00
Slava Pestov
7826543d2e
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
e5aa02571f
sequences: add suffix! to destructive sequence ops article
2010-02-25 05:57:09 +13:00
Slava Pestov
17b095a524
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
af0ddd5985
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
71d169e420
fix typos in alien docs
2010-02-23 11:56:10 -08:00
Joe Groff
818bbb4984
update docs about pointer types
2010-02-23 11:03:48 -08:00
Slava Pestov
ae25cfe712
Get foldable and flushable declarations working on typed words
2010-02-24 00:16:55 +13:00
Slava Pestov
f0aa694c7e
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
21ab2ef6e7
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
949f658928
Fix a couple of typos in complex number docs
2010-02-22 17:39:30 -06:00
Slava Pestov
db3a23ffe0
parser: auto-use prefers non-private words to private words
2010-02-22 19:25:08 +13:00
Slava Pestov
2ab1be755c
vocabs.loader: tweak platform checking logic
2010-02-22 13:17:46 +13:00
Slava Pestov
2f70ebd4d0
vocabs: document platforms.txt
2010-02-21 20:38:09 +13:00
Slava Pestov
6367c8ec85
native-thread-test: clean up
2010-02-21 17:48:05 +13:00
Slava Pestov
6e516789d5
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
1915b7e955
vocabs.loader.test.a: fix
2010-02-20 13:31:51 +13:00
Slava Pestov
95bfc8a240
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
51922a2fb9
make: documentation tweak
2010-02-20 12:18:29 +13:00
Slava Pestov
6501480a0e
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
eb8344a5a5
assocs: doc fixes
2010-02-19 11:26:01 +01:00
Philipp Brüschweiler
caf978588b
sequences: clarify some stack effect and examlpes in docs
2010-02-19 11:26:01 +01:00
Philipp Brüschweiler
db663548f9
math: typo in rem docs
2010-02-19 11:23:20 +01:00
Slava Pestov
220dd88a2c
Update documentation for new help lint check
2010-02-19 12:31:52 +13:00
Joe Groff
e70fcf159d
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
97654b67c1
Revert "io.pathnames: make absolute-path? public"
...
This reverts commit 48756c9fca
.
2010-02-17 16:06:30 -08:00
Joe Groff
1250a0fcfd
Revert "make io.pathnames tests path-separator-neutral"
...
This reverts commit f344c00629
.
2010-02-17 16:06:13 -08:00
Joe Groff
f26460450e
Revert "vocabs.loader: make vocab-dir+ use path-separator too"
...
This reverts commit 2dcc720629
.
2010-02-17 16:05:59 -08:00
Joe Groff
64a2748280
Merge branch 'master' of git://factorcode.org/git/factor
2010-02-17 12:50:46 -08:00
Slava Pestov
33bbd05507
io.pathnames: fix doc typo
2010-02-18 08:38:45 +13:00
Joe Groff
052a0cb6d4
Merge branch 'master' of git://factorcode.org/git/factor
2010-02-17 11:37:14 -08:00
Slava Pestov
31ccfa2e5d
Fix unit test failures
2010-02-18 04:58:30 +13:00
Slava Pestov
c5259f2e2c
classes.tuple: document final class declaration
2010-02-18 04:13:34 +13:00
Slava Pestov
c4c14c7ceb
classes.tuple: fix screwup
2010-02-18 03:00:43 +13:00
Slava Pestov
60296be964
typed: only unbox final classes. Fixes bug reported by littledan
2010-02-18 02:39:12 +13:00
Slava Pestov
01824d41be
Add support for final tuple classes which cannot be subclassed: TUPLE: foo ... ; final
2010-02-18 02:19:57 +13:00
Slava Pestov
41433da61b
core: minor cleanups
2010-02-18 01:57:22 +13:00
Slava Pestov
63928191e7
Minor documentation fixes
2010-02-18 01:19:39 +13:00
Slava Pestov
36cff8ed6e
combinators: better wrong-values error
2010-02-18 01:19:26 +13:00
Joe Groff
27cfeec43a
vocabs.loader: make vocab-dir+ use path-separator too
2010-02-16 19:29:42 -08:00
Joe Groff
6ac33f6dea
make io.pathnames tests path-separator-neutral
2010-02-16 19:28:51 -08:00
Joe Groff
f59f28d788
io.pathnames: make absolute-path? public
2010-02-16 19:01:44 -08:00
Joe Groff
4a182cfbad
fix append-path and vocab-dir to use path-separator
2010-02-16 18:40:40 -08:00
Slava Pestov
6620a12cde
Merge branch 'deploy-resources' of git://factorcode.org/git/factor into deploy-resources
2010-02-17 00:17:09 +13:00
Slava Pestov
bd0ca0e2aa
Clean up some tags
2010-02-17 00:12:55 +13:00
Slava Pestov
f01487eb83
A few documentation fixes
2010-02-17 00:05:36 +13:00
Slava Pestov
a495f8e099
assocs: move conjoin and conjoin-at to assoc docs
2010-02-16 15:29:46 +13:00
Joe Groff
bd2b72ad08
update vocabs and tools.deploy docs to mention icon files
2010-02-15 14:18:26 -08:00
Joe Groff
f06e278e17
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
45c85d1851
update vocabs and deploy docs to mention resources.txt
2010-02-15 10:14:30 -08:00
Slava Pestov
cd1986a906
classes: fix regression from recent bug fix
2010-02-15 23:46:55 +13:00
Slava Pestov
3e5e3a6d3f
classes: call reset-generic on predicate word to avoid redefinition problems (reported by littledan)
2010-02-15 18:34:45 +13:00
Slava Pestov
a118f208dc
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
09a4080772
Merge branch 'master' of git://factorcode.org/git/factor
2010-02-09 19:42:54 -08:00
Slava Pestov
a112e52fe7
sequences: remove outdated comment
2010-02-10 16:12:02 +13:00
Slava Pestov
1c9a95122a
math.integers: remove a -rot usage
2010-02-10 15:44:49 +13:00
Slava Pestov
1a1a61549f
sequences: remove a -rot usage
2010-02-10 15:44:15 +13:00
Slava Pestov
83410e23cc
classes.algebra: remove class<=> -- it's never used and has incorrect semantics
2010-02-10 15:04:48 +13:00
Joe Groff
a8e771c28f
update syntax-floats for changes to math.parser. clarify docs on hex float literals
2010-02-08 10:42:04 -08:00
Joe Groff
0f651c8506
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
ce1ff01851
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
90ea5796f4
math.parser: fix digit> bug found by Blei
2010-02-07 13:04:20 -08:00
Slava Pestov
747974f4ae
vm: nuke unused (string>float) primitive
2010-02-08 08:16:56 +13:00
Slava Pestov
4e766a0a12
math.parser: clean up and merge new-math-parser branch
2010-02-08 01:39:18 +13:00
Slava Pestov
afee6ccfcd
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
98c9b79881
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
f20b4e5607
tools.deploy.shaker: don't try to intern all word props anymore
2010-02-04 17:40:53 +13:00
Slava Pestov
10fe9a811b
Fix classes.tuple tests and assocs help lint
2010-02-04 08:04:47 +13:00
Slava Pestov
35acd71551
compiler.units: fix bug that came up recently with nested compilation units
2010-02-04 03:20:48 +13:00
Slava Pestov
11be5a4bd5
Rename update to assoc-union!, add assoc-filter! assoc-diff! words
2010-02-04 02:55:00 +13:00
Slava Pestov
26cae00eeb
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
0b278adb5a
Test fixes
2010-02-03 23:11:31 +13:00
Slava Pestov
f8474c3856
Documentation improvements
2010-02-03 23:11:30 +13:00
Slava Pestov
3259ef4bec
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
0b207caa87
combinators: fix typo
2010-02-03 23:11:28 +13:00
Slava Pestov
3e8d21b493
Clarify documentation for compilation units and 'undefined' error
2010-02-03 23:11:28 +13:00
Slava Pestov
2879299999
combinators: ricing call-effect
2010-02-03 23:11:26 +13:00
Slava Pestov
a005e678db
classes.tuple: make error slots read only for small space savings
2010-02-03 23:11:25 +13:00
Slava Pestov
55a89ec9c2
Better error message for call( when quotation has the wrong effect
2010-02-03 23:11:25 +13:00
Slava Pestov
df55fed478
generic: rename method-body predicate class to method
2010-02-03 23:11:24 +13:00
Slava Pestov
fbf078d4b3
words: undefined error now contains the word in question
2010-02-03 23:11:23 +13:00
Slava Pestov
e32d5fd0ac
Minor updates to string documentation
2010-02-03 23:07:53 +13:00
Slava Pestov
080609c281
Minor doc fixes
2010-02-03 22:56:32 +13:00
Brad Christensen
7381d47103
More documentation cleanup.
2010-02-03 00:05:04 -07:00
Brad Christensen
9b9322ea1e
A number of documentation fixes and cleanup.
2010-02-03 00:05:03 -07:00
Brad Christensen
1404bf71d5
Minor doc cleanup.
2010-02-03 00:05:02 -07:00
Slava Pestov
e929d906ce
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
3addfcc2ad
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
8432f4c459
Fix a couple of unit tests that were relying on the old compiler crossref structures
2010-01-31 23:26:55 +13:00
erikc
0770b940b0
Merge up
2010-01-30 20:48:06 -08:00
erikc
f33c73bf94
Merge up
2010-01-30 20:39:43 -08:00
Slava Pestov
5ed0bc72aa
Merge git://github.com/littledan/Factor into littledan
2010-01-31 02:54:58 +13:00
Slava Pestov
a22fadaee4
words: fix unit test
2010-01-31 02:50:47 +13:00
Slava Pestov
2c63161c84
stack-checker.dependencies: make conditional dependencies more robust
2010-01-31 01:55:35 +13:00
Slava Pestov
e45816cf9b
math: docs fix
2010-01-30 21:14:41 +13:00
Slava Pestov
7189342c19
compiler.units: fix call-next-method call site recompilation
2010-01-30 09:29:01 +13:00
Slava Pestov
09ead56652
Re-work flushed dependencies into new compiler cross-referencing framework
2010-01-30 09:29:00 +13:00
Slava Pestov
26f311279c
Re-defining a tuple class now invalidates cached quotation stack effects
2010-01-30 09:28:59 +13:00
Slava Pestov
c027046857
New 'conditional dependency' mechanism for more accurate recording of recompilation information
2010-01-30 09:28:57 +13:00
Slava Pestov
29fc287618
classes.tuple: documentation fix
2010-01-30 09:28:56 +13:00
Slava Pestov
f031a97084
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
4f68808a72
Rename predicate-word to create-predicate-word and add a new predicate-word word
2010-01-30 09:28:55 +13:00
Slava Pestov
bd479db2f8
Fix regression when forgetting classes
2010-01-30 09:28:55 +13:00
Slava Pestov
34287fd9d6
Minor documentation updates
2010-01-30 09:28:54 +13:00
Slava Pestov
8b19b56a1c
classes.mixin: privacy please
2010-01-30 09:28:53 +13:00
Slava Pestov
830e25c70b
More changes so that mixins trigger even less recompilation
2010-01-30 09:28:53 +13:00
Slava Pestov
066bf9a42f
classes.algebra: couple more tests
2010-01-30 09:28:53 +13:00
Slava Pestov
e6d1388dcc
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
af41dc6169
Trying to fix mixin semantics
2010-01-30 09:28:51 +13:00
Doug Coleman
1f76ab2d45
try-find is just attempt-all. oops
2010-01-28 23:28:11 -06:00
Doug Coleman
88e20af800
add some unit tests for try-find
2010-01-28 23:12:31 -06:00
Doug Coleman
46f2515ba8
add try-find for random.windows
2010-01-28 22:44:31 -06:00
Slava Pestov
6cdf4de4eb
Fix and clean up stage1 bootstrap
2010-01-28 17:30:35 +13:00
Slava Pestov
d215c108f3
core: fix bad interaction between stage1 bootstrap and manifest update code
2010-01-28 03:02:54 +13:00
Slava Pestov
73cbf46760
vocabs.parser: a couple of fixes
2010-01-27 23:20:17 +13:00
Slava Pestov
ca19d44350
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
3237e48b2d
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
b63ec30449
classes.tuple: tests were changing superclass of vocab tuple
2010-01-27 20:24:33 +13:00
Slava Pestov
94c93f0bc7
vm: 'become' primitive needs to update literal references in code blocks
2010-01-27 18:42:31 +13:00
Daniel Ehrenberg
19d551a544
Merge branch 'master' of git://factorcode.org/git/factor
2010-01-26 14:14:05 -06:00
Daniel Ehrenberg
52f2ac2bb9
Tests for propagation additions; making fixnum-bit? inline
2010-01-25 20:15:17 -06:00
Slava Pestov
de3168ad71
Various documentation improvements
2010-01-26 01:01:12 +13:00
Doug Coleman
a16d8db145
move sequence-hashcode-step to private
2010-01-22 16:30:22 -06:00
Doug Coleman
1519e0ba69
move (accumulate) to sequences.private
2010-01-22 15:04:13 -06:00
Doug Coleman
8c1d202b4c
Rename accumulator to collector, pusher to selector
2010-01-22 15:00:53 -06:00
Doug Coleman
40cf302d2d
Fix image save on Windows
2010-01-22 12:59:36 -06:00
Doug Coleman
bb2f455747
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
fbe3add21d
Merge branch 'master' of git://factorcode.org/git/factor
2010-01-20 00:16:55 -06:00
Daniel Ehrenberg
d3590ea210
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
ee71f87cfd
kernel: remove bogus test
2010-01-20 19:13:58 +13:00
Daniel Ehrenberg
aa1651032d
Adding compiler transforms in propagation
2010-01-20 00:10:49 -06:00
Slava Pestov
00328c85e0
vm: remove vm-ptr primitive
2010-01-20 17:06:49 +13:00
Slava Pestov
5606825e8b
vm: remove primitive table, non-optimizing compiler now looks up primitives with dlsym()
2010-01-19 20:00:33 +13:00
Slava Pestov
8836ce2581
Fix performance regression in vector ops on specialized arrays, tweak definition of <slice> and 2map-reduce to generate fewer conditionals
2010-01-19 17:48:10 +13:00
Slava Pestov
637a77c018
Stop wearing monocle and use the term "entry point" instead of "XT" throughout VM and compiler; also remove two unused relocation types
2010-01-18 20:54:00 +13:00
Slava Pestov
9bc328b50d
slots: fix declaration unit test
2010-01-17 00:30:36 +13:00
Slava Pestov
d0dc6ba8af
slots, classes.tuple: make 'integer'-declared slots call >integer on the new value before storing it in, and remove code duplication between type checks in writer methods and boa constructors
2010-01-16 19:29:19 +13:00
Slava Pestov
dd0571e69a
io.buffers: fix buffer-until for iota (reported by Sascha Matzke)
2010-01-16 18:44:24 +13:00
Slava Pestov
7f7e1e4e1d
Help lint fixes for iota
2010-01-15 17:04:14 +13:00
Doug Coleman
4e6a5a772f
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
core/sequences/sequences-docs.factor
2010-01-14 17:22:02 -06:00
Doug Coleman
9356da6fb3
Fix a few integers-as-sequences in docs
2010-01-14 17:20:43 -06:00
Slava Pestov
4cce9259e1
math.parser: fix docs -- maximum radix is 16 not 36
2010-01-15 08:36:40 +13:00
Slava Pestov
ed37ed6b70
parser: make 'CONSTANT: foo<newline>3' work in the listener
2010-01-15 08:30:26 +13:00
Slava Pestov
e8378b3dc6
generic, sequences: update docs for iota
2010-01-15 08:23:27 +13:00
Doug Coleman
4c71d71907
random is generic now -- iota random -> random
2010-01-14 12:48:57 -06:00
Slava Pestov
df4fb4a3ee
Removing integers-as-sequences
2010-01-15 07:15:33 +13:00
Slava Pestov
47a5e96547
Rework min and max so that behavior with floats and NaNs is consistent between generic arithmetic and open-coded float intrinsics
2010-01-13 22:20:16 +13:00
Slava Pestov
1c10196c43
Rename kernel.private:getenv/setenv to special-object/set-special-object to mirror recent renaming on the VM side
2010-01-13 18:08:18 +13:00
Slava Pestov
9471fd1a33
alien: fix help lint
2010-01-07 20:54:27 +13:00
Slava Pestov
46a1b1cc46
alien: document alien-assembly
2010-01-07 17:57:48 +13:00
Slava Pestov
235f3238f5
Add alien-assembly form for inline assembler, works like alien-invoke except calls a user-supplied quotation instead of generating a subroutine call. Replaces FPU status control, SSE detection and read timestamp routines in vm/cpu-x86.*S
2010-01-07 17:39:22 +13:00
Slava Pestov
1219040865
compiler.units: fix faulty unit test
2010-01-06 23:52:14 +13:00
Slava Pestov
c04fef10c7
vm: ensure that non-optimized calls to generic words which have not yet been compiled can still work
2010-01-06 23:49:14 +13:00
Slava Pestov
36d2ac8921
vm: move c_to_factor, lazy_jit_compile_impl, throw_impl, set_callstack assembly routines into non-optimizing compiler for x86-64
2010-01-06 15:47:36 +13:00
Slava Pestov
ba5b90e063
Change how non-volatile register preservation is done in alien callbacks, with the aim of fixing callbacks on PowerPC, and to eventually eliminate assembly code from VM
...
- Simplify calculation of offset in relocation table
- Open-code %alien-callback
- Remove magic_frame hack from context objects
- Move magical return instruction from optimizing compiler backend into callback entry stub
2010-01-03 01:11:51 +13:00
Slava Pestov
38f06b8558
continuations: remove outdated comment
2009-12-28 12:42:25 +13:00
Slava Pestov
63023ae227
kernel: fix set-callstack docs
2009-12-28 12:41:45 +13:00
Slava Pestov
819e46f42b
kernel: fix stack effect declarations of call-clear and set-callstack, and add a unit test for call-clear
2009-12-26 15:38:01 +13:00
Slava Pestov
08cd0df788
primitives.factor: move call-clear into kernel.private since its unsafe
2009-12-26 15:27:39 +13:00
Slava Pestov
eb0a28aa54
Merge branch 'master' of git://factorcode.org/git/factor
2009-12-15 07:21:17 -05:00
Slava Pestov
f6c0c64518
threads, io.streams.c: cleanups
2009-12-15 07:20:41 -05:00
Slava Pestov
0068bce934
vm: big overhaul of non-optimizing compiler
...
- change some primitives into sub-primitives: fixnum+ fixnum- fixnum* inline-cache-miss inline-cache-miss-tail
- rename some relocation types for clarity
- some other minor re-organizations and cleanups
2009-12-15 07:20:09 -05:00
Doug Coleman
9fea67f3ff
triyng to rice crc32 a bit
2009-12-13 02:03:06 -06:00
Slava Pestov
4cea294cfd
sequences: fix map-reduce and 2map-reduce docs, reported by Ben Schlingelhof
2009-12-12 15:16:11 -05:00
Doug Coleman
26de809d57
link pusher and accumulator in docs
2009-12-07 16:26:24 -06:00
Joe Groff
67cc1c01be
Merge branch 'master' into simd-cleanup
2009-11-26 16:14:46 -08:00
Slava Pestov
0612bc6177
Factor source files should not be executable
2009-11-21 17:50:43 -06:00
Slava Pestov
24c3ddbbde
Clean up startup/shutdown hook code
2009-11-20 00:57:49 -06:00
Doug Coleman
adcb0df0c4
fix stack effects for nanosseconds, update io backends for nanos
2009-11-19 04:51:47 -06:00
Slava Pestov
40348ed0ce
combinators: fix typo in docs
2009-11-19 02:08:14 -06:00
Doug Coleman
f4450653a9
remove system-millis and update vocabs to use system-micros or nano-count
2009-11-18 20:56:09 -06:00
Doug Coleman
41b931a615
fix system docs
2009-11-18 18:34:16 -06:00
Doug Coleman
11c9c6004f
document nano-count, move monotonic-clock to hell
2009-11-18 16:33:10 -06:00
Doug Coleman
6f7ec206a1
rename millis to system-millis, micros to system-micros, add nano-count
2009-11-18 15:58:48 -06:00
Doug Coleman
b4206f5252
initial commit to nanos branch to replace micros
2009-11-18 04:20:05 -06:00
Slava Pestov
e30d275e41
compiler.cfg: 'basic-block new hashcode' should not throw an exception; fixes tools.deploy.test.11
2009-11-16 02:01:36 -06:00
Doug Coleman
cc194416f9
Merge branch 'master' into startup
...
Conflicts:
core/bootstrap/primitives.factor
vm/run.hpp
2009-11-15 02:52:50 -06:00
Joe Groff
f544982fda
Merge branch 'master' of git://factorcode.org/git/factor into simd-cleanup
...
Conflicts:
basis/math/vectors/simd/functor/functor.factor
2009-11-14 21:02:39 -06:00
Slava Pestov
11174a7ffe
hashtables: fix indentation
2009-11-14 02:01:30 -06:00
Slava Pestov
e32c167b7a
Merge branch 'master' of git://factorcode.org/git/factor
2009-11-14 01:59:32 -06:00
Slava Pestov
bb8eabba36
Unit test fixes
2009-11-13 23:00:50 -06:00
Doug Coleman
ccd35c2f4f
Merge branch 'master' of git://factorcode.org/git/factor
2009-11-13 15:03:16 -06:00
Slava Pestov
47087480a9
Bootstrap cleanups
2009-11-13 08:05:02 -06:00
Slava Pestov
ea36783fb3
Fix bootstrap
2009-11-13 07:55:47 -06:00
Slava Pestov
5470330c45
Fix another problem with call( inline caching
2009-11-13 07:17:00 -06:00
Slava Pestov
afecb9c758
Fixing call( inline caching
2009-11-13 04:32:33 -06:00
Slava Pestov
86da8ebed9
Instead of bumping the definition counter every time in the VM, bump it only if stack effects changed or macros were redefined
2009-11-13 03:52:14 -06:00
Slava Pestov
8dd8d70500
sequences: inline a couple of words
2009-11-13 03:01:28 -06:00
Slava Pestov
14a4535ad9
classes.algebra: output cleaner anonymous unions and intersections
2009-11-13 03:01:22 -06:00
Doug Coleman
b71d86a1dc
update more 8bit encoding usages
2009-11-12 18:36:47 -06:00
Doug Coleman
aec676edec
use surround/glue instead of 3append
2009-11-12 03:01:09 -06:00
Slava Pestov
41c17f0429
Fixing test failures
2009-11-11 02:40:24 -06:00
Slava Pestov
2afd7ce244
Faster identity-hashcode primitive; fast path now opencoded by the compiler
2009-11-11 02:27:19 -06:00
Slava Pestov
b551721dd9
Minor cosmetic fixes
2009-11-10 21:48:00 -06:00
Slava Pestov
064c00f78d
New identity-hashcode primitive
2009-11-10 21:18:54 -06:00
Slava Pestov
5d3c4a5404
io.pathnames: document resource: and vocab:
2009-11-10 18:57:46 -06:00
Slava Pestov
c693587018
classes.algebra: cleanup
2009-11-10 17:41:47 -06:00
Slava Pestov
0beec6befc
Merge branch 'master' of git://github.com/Blei/factor
2009-11-09 00:57:41 -06:00
Joe Groff
788289e51e
Merge branch 'master' into simd-cleanup
2009-11-08 21:54:53 -06:00
Slava Pestov
cd2e226afa
stack-checker: split off stack-checker.dependencies from stack-checker.state
2009-11-08 20:34:46 -06:00
Slava Pestov
a361e68f30
generic, words: update unit tests for deopt data structure change
2009-11-08 19:44:04 -06:00
Slava Pestov
5d79450d9d
Use a more compact representation for "compiled-uses" and "compiled-generic-uses" word-props; reduces image size
2009-11-08 06:08:04 -06:00
Joe Groff
6047f79996
pronouns deserve antecedents
2009-11-07 23:15:30 -06:00
Joe Groff
8894e9047c
Merge branch 'master' into simd-cleanup
2009-11-07 22:26:09 -06:00
Philipp Brüschweiler
8163c47b4a
sequences: rename virtual-seq to virtual-exemplar
2009-11-07 00:06:26 +01:00
Joe Groff
2352792502
factor "split-when" (split on predicate) from "split"
2009-11-06 16:29:33 -06:00
Joe Groff
ca7f07eed9
actually, no, it doesn't provide warnings for references to forgotten words
2009-11-06 15:25:33 -06:00
Slava Pestov
a46671e3ad
math.integers: fix help lint on 32-bit
2009-11-06 04:52:52 -06:00
Slava Pestov
a089163a40
math: fix test failures on 32-bit
2009-11-06 04:50:41 -06:00
Slava Pestov
209436071f
memory: fix help lint
2009-11-06 04:17:57 -06:00
Slava Pestov
734f18624c
generic.single: simplify stack shuffling
2009-11-06 04:15:46 -06:00
Slava Pestov
ba31abb301
Fix some test failures
2009-11-06 02:35:43 -06:00
Joe Groff
00ce8b6a33
deprimitivize tuck and put it to pasture
2009-11-05 22:47:05 -06:00
Joe Groff
4b0edb34d3
Merge branch 'master' of git://factorcode.org/git/factor
2009-11-05 22:23:21 -06:00
Slava Pestov
4061951d1c
vm: simpler object space implementation. begin-scan/next-object/end-scan primitives replaced by a single all-instances primitive
2009-11-05 21:49:03 -06:00
Joe Groff
61d579360d
remove non-primitive-related uses of tuck from basis
2009-11-05 17:03:24 -06:00
Joe Groff
6e9d369331
remove spin from core and retire it to basis/shuffle
2009-11-05 15:40:48 -06:00
Joe Groff
75d04922b9
Merge branch 'master' into simd-cleanup
...
Conflicts:
basis/math/vectors/simd/functor/functor.factor
2009-11-05 11:27:08 -06:00
Slava Pestov
47df580081
tools.time: overhaul
2009-11-05 01:07:59 -06:00
Slava Pestov
109aa88b06
compiler: update unit tests for 4-bit tag change
2009-11-03 21:40:29 -06:00
Slava Pestov
d7dceed096
slots: another bootstrap fix
2009-11-02 20:28:43 -06:00
Slava Pestov
2c0531b015
vm: faster immediate_p()
2009-11-02 20:21:21 -06:00
Slava Pestov
857d0ba1fd
core: bootstrap fixes
2009-11-02 20:21:10 -06:00
Joe Groff
e0ba0c5539
genericize vector ops
2009-11-02 14:21:19 -06:00
Slava Pestov
e4ad642134
vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress)
2009-11-02 04:25:54 -06:00
Slava Pestov
f21199005d
Merge branch 'master' into new_gc
2009-11-01 22:17:27 -06:00
Joe Groff
9184254f2c
move define-inline-method from classes.struct.private to generic.parser
2009-11-01 22:10:28 -06:00
Joe Groff
61a3e4e814
new, faster one-pass number parser
2009-11-01 01:59:12 -05:00
Joe Groff
60aecace7d
remove dangling PRIVATE> from math.parser
2009-11-01 00:42:25 -05:00
Joe Groff
3774c72591
rearrange destructive sequence ops docs
2009-10-31 16:53:39 -05:00
Joe Groff
2f90b13160
touch up quotation documentation
2009-10-31 16:40:10 -05:00
Joe Groff
9163e4e552
clean up cleave/spread/apply combinator articles
2009-10-31 15:41:34 -05:00
Joe Groff
d4a207662e
might want to accurately divide large negative fixnums too
2009-10-31 12:10:29 -05:00
Joe Groff
a7011fe087
use bignum/f to get accurate division of fixnums >= 2^53 on 64-bit platforms
2009-10-31 12:06:56 -05:00
Slava Pestov
b2ba465bcd
Merge optimizations from master branch
2009-10-31 03:02:19 -05:00
Joe Groff
07254fa823
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-30 22:02:15 -05:00
Joe Groff
d55a3a3445
remove useless slot types from copy-state
2009-10-30 22:01:51 -05:00
Slava Pestov
37abac7407
Merge branch 'master' into new_gc
2009-10-30 21:04:37 -05:00
Slava Pestov
c05affdce3
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-30 21:00:26 -05:00
Slava Pestov
0d24e65e4e
growable: M\ growable contract should be declared inline, fixes performance regression on stack benchmark
2009-10-30 20:53:47 -05:00
Joe Groff
3af3536404
clean up copy implementation for real
2009-10-30 19:39:46 -05:00
Joe Groff
3f15e028f7
exile roll and -roll to basis/shuffle and mark them deprecated
2009-10-30 17:11:45 -05:00
Joe Groff
9624b0c5c3
add inlinable assoc methods on f
2009-10-30 15:22:14 -05:00
Joe Groff
70ffa003ec
eliminate roll/-roll from core
2009-10-30 13:36:15 -05:00
Slava Pestov
6f9336c29e
Merge branch 'master' into new_gc
2009-10-30 03:03:05 -05:00
Joe Groff
1cf45abf06
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-30 00:42:37 -05:00
Joe Groff
09e76591b1
start cleaning up internal implementation of copy (needs more work)
2009-10-30 00:42:21 -05:00
Joe Groff
eccf3fba9d
shun ugly shuffle words in the docs
2009-10-29 19:42:55 -05:00
Joe Groff
3cf641a87c
remove inaccurate comment from sequences docs example
2009-10-29 15:34:38 -05:00
Doug Coleman
1d12a6707d
sigma -> map-sum
2009-10-29 14:34:04 -05:00
Joe Groff
a8b9477fe7
clean up typos and improve synergy between locals and namespaces docs
2009-10-29 14:08:45 -05:00
Joe Groff
f21ba7a759
update the article on shuffle words to hide away the more troublesome ones
2009-10-29 14:07:46 -05:00
Joe Groff
2599993093
link vocabularies->words->quotations in synopsis documentation
2009-10-28 22:48:25 -05:00
Doug Coleman
e376a0ece2
(normalize-path) -> absolute-path, canonicalize-path -> resolve-symlinks
2009-10-28 17:25:50 -05:00
Doug Coleman
1738fb7c5e
link a word in docs
2009-10-28 16:17:08 -05:00
Doug Coleman
3e9593d3c0
add a unit test for accumulate!
2009-10-28 16:12:43 -05:00
Doug Coleman
def951ce9b
add accumulate! for joe
2009-10-28 16:10:05 -05:00
Doug Coleman
93de179c2f
over push -> suffix!, over push-all -> append!
2009-10-28 15:29:01 -05:00
Doug Coleman
bd13e018dd
memq? -> member-eq?, sorted-memq? -> sorted-member-eq?
2009-10-28 15:02:00 -05:00
Doug Coleman
1476cdb974
reverse-here -> reverse!
2009-10-28 14:40:15 -05:00
Doug Coleman
b0e3c7a1fc
add docs for append! and suffix!
2009-10-28 13:48:16 -05:00
Doug Coleman
7ce4b746e5
parsed -> suffix!, add append!
2009-10-28 13:38:27 -05:00
Slava Pestov
299b5b0f6c
filter-here -> filter!
2009-10-28 00:44:05 -05:00
Slava Pestov
50f5c3d116
remq -> remove-eq, delq -> remove-eq!
2009-10-28 00:23:08 -05:00
Slava Pestov
b7e05a525b
remove unused and really confusing remove-all word
2009-10-27 23:45:03 -05:00
Slava Pestov
951e3e9c83
delete-nth -> remove-nth!
2009-10-27 23:41:57 -05:00
Slava Pestov
f5a0a8b6e1
delete -> remove!
2009-10-27 23:25:35 -05:00
Slava Pestov
08e7d25dc5
change-each -> map!, deep-change-each -> deep-map!
2009-10-27 22:32:56 -05:00
Slava Pestov
d95a98eb9c
vm: add primitives for getting at GC events, data-room and code-room primitives now return structs instead of arrays
2009-10-27 03:32:28 -05:00
Slava Pestov
e793a72060
vm: remove crummy old GC stats, split off free list code, clean up various other things
2009-10-26 22:08:35 -05:00
Joe Groff
ad18098a4f
add some math.parser hints that slightly improve number parsing performance
2009-10-26 17:48:05 -05:00
Joe Groff
5caa118e40
make first2, first3, first4 inline
2009-10-26 17:30:37 -05:00
Joe Groff
11b75ea4bd
don't talk about the retain stack anymore in combinators docs
2009-10-24 20:58:35 -05:00
Slava Pestov
9abe29bebc
Merge branch 'master' into new_gc
2009-10-24 01:31:15 -05:00
Slava Pestov
2b142dabae
Re-organize a few things to reduce '-include=' image size
2009-10-23 04:32:17 -05:00
Slava Pestov
64ff812611
Merge branch 'master' into new_gc
2009-10-23 03:56:46 -05:00
Joe Groff
d5d89f03a7
swap around io combinators to avoid a bunch of redundant "input-stream get"s in each-line, each-block, contents, etc.
2009-10-23 00:07:19 -05:00
Joe Groff
28f5347e71
tighten some screws in math.parser
2009-10-22 20:48:46 -05:00
Joe Groff
943bde59f9
speed up dec>float a little
2009-10-22 18:55:32 -05:00
Joe Groff
cdd0e5774e
make new-resizable on growable sequences return a growable of the same type
2009-10-22 18:55:00 -05:00
Joe Groff
e31ed3eda4
add filter-as to sequences
2009-10-22 17:37:20 -05:00
Joe Groff
1a7b4d7c63
inline the trivial words in math.parser
2009-10-22 17:26:22 -05:00
Joe Groff
ba5429e772
fix sequences bootstrap
2009-10-22 14:53:16 -05:00
Joe Groff
fdea9b09f2
change produce-as so it uses an intermediate vector of a type appropriate to the destination type
2009-10-22 14:35:27 -05:00
Doug Coleman
649323ebe0
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-22 13:20:17 -05:00
Slava Pestov
3394309659
Merge branch 'master' into new_gc
2009-10-22 05:40:57 -05:00
Joe Groff
c3b8847936
update a bunch of alien-callbacks and alien-indirects to use c-type words
2009-10-21 21:10:11 -05:00
Doug Coleman
0d4b9132d7
fix a bunch of typos in docs
2009-10-21 17:40:43 -05:00
Doug Coleman
b34bfe563e
only call dispose-each once
2009-10-21 13:07:31 -05:00
Doug Coleman
a4a687ab32
clean up global destructors as a shutdown hook in case exit is called
2009-10-21 12:32:51 -05:00
Doug Coleman
5b4c1aea5d
run bootstrap and startup hooks inside a with-destructors. use &dispose instead of setting shutdown hooks in a couple of places
2009-10-20 18:26:10 -04:00
Slava Pestov
5608bc1268
Merge branch 'master' into new_gc
2009-10-20 14:28:51 -05:00
Slava Pestov
32adb5df27
classes.builtin: fix help lint
2009-10-20 14:28:34 -05:00
Slava Pestov
d85d84697a
Change data heap alignment to 16 bytes
2009-10-20 12:45:00 -05:00
Doug Coleman
278a6955c5
Merge branch 'master' into startup
2009-10-20 00:31:45 -04:00
Doug Coleman
110b310c54
the exit primitive is now called (exit) and exit calls shutdown hooks.
...
add a stop_factor function to the vm to allow calling the shutdown quotation
2009-10-20 00:28:18 -04:00
Doug Coleman
6b6e56a179
change add-init-hook to add-startup-hook, new add-shutdown-hook word
2009-10-19 22:17:02 -04:00
Slava Pestov
304496e037
Build fixes
2009-10-19 19:18:08 -05:00
Slava Pestov
4e8a2a2638
io.backend/pathnames: fix help lint
2009-10-17 00:09:57 -05:00
Slava Pestov
4ed91ff5ee
syntax: fix docs for :
2009-10-16 23:45:10 -05:00
Doug Coleman
6af901a35d
make words public again
2009-10-16 16:59:25 -05:00
Doug Coleman
7d43abe49b
Merge branch 'master' of git://factorcode.org/git/factor
2009-10-16 12:51:25 -05:00
Joe Groff
3d95494c1e
Merge branch 'master' of http://factorcode.org/git/factor
2009-10-16 12:28:29 -05:00
Joe Groff
ce807b0fbb
factor "parse-word" out of "scan-word"
2009-10-16 12:26:31 -05:00
Slava Pestov
a6598eb33a
parser: clarify docs
2009-10-16 12:10:39 -05:00
Slava Pestov
107c96f642
vm: code heap compaction at runtime using compact-gc primitive
2009-10-16 11:39:35 -05:00
Doug Coleman
4cec00f209
improve io.pathnames docs
2009-10-16 05:48:37 -05:00
Slava Pestov
38d120f92e
vm: rt-vm relocation now supports accessing a field directly
2009-10-14 19:24:23 -05:00
Doug Coleman
50d4eb27bf
add missing usings
2009-10-10 14:04:22 -05:00
Doug Coleman
584cd44856
fix the tuple subclassing example docs
2009-10-10 14:02:35 -05:00
Slava Pestov
b88fde04d9
alien.syntax: add C-GLOBAL: for defining words to access global variables, and remove the gimpy one from core-text.utilities
2009-10-09 04:46:29 -05:00
Slava Pestov
c5979615b7
Merge branch 'master' into new_gc
2009-10-08 02:29:24 -05:00
Joe Groff
47cfb7d3a5
fix ##load-constant/##scalar>vector folding when constant is a fixnum
2009-10-07 12:46:08 -05:00
Slava Pestov
697e2342d0
vm: put code block owner directly in the header, instead of as the first entry in the literal table. Reduces x86-64 image size by ~700kb, also eliminates separate 'strip' set of staging images from deploy tool
2009-10-06 06:25:07 -05:00
Doug Coleman
84fd08d86b
update docs for stream-tell
2009-10-03 19:39:06 -05:00
Doug Coleman
1d41f4c66c
add unit test for c stream-tell
2009-10-03 19:07:16 -05:00
Doug Coleman
098fd0248a
support limited-streams correctly for seekable streams
2009-10-03 18:27:09 -05:00
Doug Coleman
11d55131de
add ftell primitive
2009-10-03 18:20:35 -05:00
Doug Coleman
67167cf9ea
Merge branch 'docs' of git://github.com/klazuka/factor into klazuka
...
Conflicts:
basis/math/vectors/vectors-docs.factor
2009-10-02 15:58:45 -05:00
Keith Lazuka
405e5d015b
docs: change $subsection to $subsections
2009-10-02 12:15:48 -04:00
Slava Pestov
56a4b323ef
sequences: add accumulate-as and document insert-nth
2009-10-01 23:13:33 -05:00
Doug Coleman
9ca974fc7d
Merge branch 'browser' of git://github.com/klazuka/factor
2009-09-30 14:10:17 -05:00
Doug Coleman
bc5807b20a
add examples to checksums docs
2009-09-30 02:26:32 -05:00
Slava Pestov
3e27d06914
layouts: most-positive/negative-fixnum return fixnums now
2009-09-29 22:27:54 -05:00
Joe Groff
92e864b019
fix stack effect of ERROR: words that inherit slots from a base class
2009-09-29 12:52:13 -05:00
Joe Groff
44f393771b
change CALLBACK: to use the ABI of the current LIBRARY: and get rid of STDCALL-CALLBACK:
2009-09-28 19:27:28 -05:00
Doug Coleman
98546d6c8f
fix checksum protocol -- was hardcoded to a block size of 64
2009-09-28 18:58:20 -05:00
Slava Pestov
4abfe06b51
Fixing various test failures caused by C type parser change, and clarify C type docs some more
2009-09-28 08:48:39 -05:00
Slava Pestov
eb6933ebfc
definitions: make FORGET: M\ update compiled xref correctly
2009-09-28 03:04:53 -05:00
Slava Pestov
ab8c6e9978
Word hashcodes are now computed from the word's name/vocabulary, removing a source of non-determinism
2009-09-27 21:09:11 -05:00
Slava Pestov
77fa16c76f
alien: improve documentation
2009-09-26 21:28:11 -05:00
Slava Pestov
fa598be667
Fix GC root safety in word-xt primitive
2009-09-25 21:42:21 -05:00
Doug Coleman
9963213900
rename a couple more words
2009-09-24 19:47:44 -05:00
Doug Coleman
c0294195e6
rename another strings.parser word
2009-09-24 19:45:03 -05:00
Doug Coleman
bf3b154091
rename a couple of strings.parser words
2009-09-24 19:43:57 -05:00
Slava Pestov
1debfb9398
generic: cleanup
2009-09-24 06:24:52 -05:00
Slava Pestov
0836e79e66
Fix conflict
2009-09-23 20:52:04 -05:00
Slava Pestov
413dc67985
Put bad escape code in the bad-escape error
2009-09-23 17:55:54 -05:00
Slava Pestov
1788957e1d
syntax: fix typos in " docs
2009-09-23 17:50:00 -05:00
Doug Coleman
545f7f11bb
document """
2009-09-23 10:33:40 -05:00
Doug Coleman
810bd63820
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/math/vectors/simd/simd-docs.factor
2009-09-23 10:11:49 -05:00
Slava Pestov
e1efb189a4
math and math.vectors: improved documentation
2009-09-23 03:08:45 -05:00
Keith Lazuka
bea4aa7662
docs: updated some docs to use new markup
2009-09-22 15:22:34 -04:00
Doug Coleman
51ddc963b8
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
core/generic/generic-tests.factor
2009-09-22 10:25:42 -05:00
Slava Pestov
be8cd84b40
generic: fix tests
2009-09-22 03:24:06 -05:00
Doug Coleman
b86314ec39
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-21 17:59:48 -05:00
Slava Pestov
962d039852
Rename specific-method to method-for-class, rename (effective-method) to method-for-object, and make both much faster
2009-09-21 17:42:20 -05:00
Doug Coleman
4dbceb60e8
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-21 14:22:14 -05:00
Joe Groff
55988828bf
update alien docs to talk about C types as words
2009-09-21 13:20:01 -05:00
Doug Coleman
5cb34724b7
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/classes/struct/struct-tests.factor
basis/functors/functors-tests.factor
basis/specialized-arrays/specialized-arrays-tests.factor
2009-09-20 23:02:49 -05:00
Doug Coleman
eceed177d6
replace usages of <" with """
2009-09-20 22:42:40 -05:00
Doug Coleman
a4a9dcce00
fix string parsing
2009-09-20 21:50:17 -05:00
Joe Groff
f459c24e45
oops, float>hex didn't preserve leading zeroes in mantissa
2009-09-20 16:48:42 -05:00
Doug Coleman
31e7d355fe
fixing some quotes in strings bugs
2009-09-20 15:08:06 -05:00
Doug Coleman
e3ff59c303
the last character on a multiline string cannot be a backslash
2009-09-20 14:18:19 -05:00
Slava Pestov
f8a91438cd
Merge Phil Dawes' VM work
2009-09-20 03:48:08 -05:00
Doug Coleman
dc4a544a92
add multiline string support
2009-09-19 01:55:05 -07:00
Slava Pestov
7ddad99555
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-18 14:34:39 -07:00
Joe Groff
238f600da2
document number-base prettyprinter variable. add more docs about hex float syntax
2009-09-18 15:11:01 -05:00
Joe Groff
076ab42dc3
move some allocation words that don't really have much to do with c types out of alien.c-types into a new alien.data vocab
2009-09-17 22:36:05 -05:00
Slava Pestov
6b502f6fe5
combinators: clarify docs
2009-09-17 14:07:08 -07:00
Slava Pestov
97d4ac2798
bootstrap.stage1: decent error message if stage2.factor can't be found
2009-09-17 09:14:56 -07:00
Joe Groff
748ba4b833
give a better error message when an invalid slot name is used in a tuple/struct literal
2009-09-16 18:07:39 -05:00
Phil Dawes
2e50da6beb
added vm-ptr primitive
2009-09-16 08:20:50 +01:00
Joe Groff
8c14af3f6c
add a number-base configuration variable to prettyprint.config. set to 2 to print BIN:, 8 to print OCT:, 10 to print decimal, 16 to print HEX:
2009-09-14 15:03:05 -05:00
Slava Pestov
32b95c2cdf
math: add unordered comparison operators u< u<= u> u>= which behave exactly like < <= > >= except no floating point exceptions are set if one or both inputs are NaNs; also add efficient intrinsic for unordered? predicate, and fix propagation type functions for abs, absq, and bitnot
2009-09-12 22:20:13 -05:00
Slava Pestov
f890f39d7c
math.parser: fix example
2009-09-12 21:45:57 -05:00
Slava Pestov
aad68418d2
math, syntax: document hexadecimal float literal syntax
2009-09-12 21:18:17 -05:00
Slava Pestov
a2b864e4f5
ALIEN: now reads a hexadecimal integer instead of a decimal one, since in general hex is more useful for addresses
2009-09-12 21:17:53 -05:00
Slava Pestov
018677319c
math, syntax: fix help lint
2009-09-12 21:07:31 -04:00
Slava Pestov
1337f82ce6
math.order: better docs
2009-09-12 16:33:42 -05:00
Slava Pestov
11f984e734
math.floats: fix abs on floats; -0.0 abs should be 0.0 not -0.0
2009-09-12 16:24:07 -05:00
Slava Pestov
3c55e7fe0c
Add NAN: literal syntax for NANs with a payload
2009-09-12 15:06:15 -05:00
Joe Groff
0ed5822ed9
HEX: X.XXXpEEE hexadecimal float literal syntax
2009-09-11 20:11:29 -05:00
Joe Groff
14f412b404
add an "unordered?" predicate to math, with a dumb implementation for now
2009-09-10 23:45:18 -04:00
Slava Pestov
d5bc1ceca2
classes.struct: fix some bugs
...
- STRUCT: foo<ENTER> in listener threw an error
- S{ did not throw an error when used with non-struct types
- attempting to subclass a struct class now fails
- forgetting a struct class now removes the corresponding C type
- 'see'ing a struct class now indents correctly
2009-09-10 15:59:27 -05:00
Slava Pestov
d9ebfe5f48
syntax: improve T{ docs
2009-09-10 15:53:14 -05:00
Slava Pestov
7f2e2b1777
Specialized array overhaul
...
- Replace hand-written specialized-arrays.* subvocabularies with new system; instead of USE:ing specialized-arrays.T, do SPECIALIZED-ARRAY: T
- Ditto for specialized-vectors; use SPECIALIZED-VECTOR:
- io.mmap.functor: removed entirely, use <mapped-array> instead
- struct-arrays and struct-vectors have been removed because specialized arrays and vectors subsume them entirely
2009-09-09 22:33:34 -05:00
Slava Pestov
924ccca457
sequences: privacy please
2009-09-08 16:25:41 -05:00
Joe Groff
f2212acd46
Merge branch 'master' into strong-typing
2009-09-08 15:53:20 -05:00
Slava Pestov
a0e1af5891
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-08 14:22:52 -05:00
Doug Coleman
b9eb3a791f
deprecating nth for integers is annoying
2009-09-08 14:18:26 -05:00
Slava Pestov
bbca00e2ae
Fix conflicts
2009-09-07 23:51:25 -05:00
Jon Harper
1c97d33854
Fix documentation errors
2009-09-06 19:00:03 +09:00
Joe Groff
1bc97b4624
add unit tests for comparisons against nan
2009-09-03 17:27:06 -05:00
Slava Pestov
e3b967fe67
Merge branch 'master' of git://factorcode.org/git/factor
2009-09-02 06:22:44 -05:00
Slava Pestov
389f47086a
classes.tuple: don't run out of memory inside 'instances' quotation if optimizing compiler is off
2009-09-02 05:19:20 -05:00
Joe Groff
65fa9cf301
Merge branch 'master' into strong-typing
2009-09-01 21:35:29 -05:00
Joe Groff
1106fb10f1
let's not forget about hex literals
2009-09-01 21:28:23 -05:00
Joe Groff
dc0944bad1
Merge branch 'master' into strong-typing
2009-09-01 21:18:50 -05:00
Joe Groff
1a04bc1124
require numeric literals to begin and end with a digit/decimal point so that stuff like "," and "1," don't parse as numbers
2009-09-01 21:14:26 -05:00
Joe Groff
19b10fb85e
bring back ( x: type y: type -- ) stack effect syntax, and automatically hint words based on types in their declared effect
2009-09-01 14:39:22 -05:00
Doug Coleman
26cc551049
fix another tuple definition bug
2009-09-01 11:36:06 -05:00
Doug Coleman
d46d063f5f
inheriting from itself would hang a tuple definition. only breaks if tuple is being redefined
2009-09-01 04:02:44 -05:00
Slava Pestov
ab45402d04
Minor doc improvements
2009-08-31 05:46:57 -05:00
Doug Coleman
d88cdffa47
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-29 23:39:20 -05:00
Slava Pestov
ec70e1d714
More minor documentation tweaks
2009-08-30 06:32:20 -05:00
Doug Coleman
0be2e17246
put a method on M\ tuple string>alien that calls underlying>>
2009-08-29 19:55:27 -05:00
Joe Groff
d26735c98f
mark integer sequence methods as deprecated
2009-08-29 10:29:41 -05:00
Slava Pestov
2bb6293217
compiler: add fixnum-min/max intrinsics; ~10% speedup on benchmark.yuv-to-rgb
2009-08-28 19:02:59 -05:00
Slava Pestov
d957ae4e44
Performance improvements to make struct-arrays benchmark faster
...
- improved optimization of ##unbox-any-c-ptr on ##box-displaced-alien; convert it to ##unbox-c-ptr where possible using class info stored in the ##bda instruction
- make fcos, fsin, etc inline again; everything in math.libm inline again, except for fsqrt which is an intrinsic
- convert min and max on floats to float-min and float-max
- make min and max not inline, so that the above can work
- struct-arrays: rice a bit so that more fixnums come up
2009-08-28 05:21:16 -05:00
Doug Coleman
e40ac73085
fix typo in gensym reported by mnestic
2009-08-27 16:10:00 -05:00
Doug Coleman
9a876a5255
remove duplicate usings
2009-08-26 22:23:03 -05:00
Doug Coleman
bbcf08cdc3
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-26 09:15:33 -05:00
Joe Groff
75b3bc655a
allow alien.strings:alien>string to take an object with underlying>> slot
2009-08-26 09:13:30 -05:00
Doug Coleman
3a5c7d8908
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-25 09:33:42 -04:00
Slava Pestov
c925724d7b
Improve destructors docs, fix bug where debug-leaks? wasn't being switched off
2009-08-24 21:44:48 -05:00
Slava Pestov
e44a0158e6
tools.destructors: leaks now tracks leaks globally
2009-08-24 20:45:06 -05:00
Slava Pestov
a2529717ba
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-24 20:34:15 -05:00
Slava Pestov
adc154e06b
destructors: already-unregistered error had the wrong content, also don't throw an error when disposing a disposable twice
2009-08-24 20:27:22 -05:00
Slava Pestov
b12bbaf7ec
tools.destructors: destructors. and leaks words now output a 'show instances' link which lists all relevant disposables
2009-08-24 20:21:38 -05:00
Joe Groff
54ff361331
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-24 18:04:44 -05:00
Doug Coleman
16ad61021f
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-24 09:58:48 -04:00
Slava Pestov
46045c882e
Disposables are now registered in a global disposables set. To take advantage of this, subclass disposable instead of providing a disposed slot and call new-disposable instead of new. tools.disposables defines two words, 'disposable.' and 'leaks', to help track down resource lifetime problems
2009-08-24 02:26:13 -05:00
Doug Coleman
bea1e3732e
revert replicate change again...the world is not ready
2009-08-23 01:00:46 -04:00
Doug Coleman
f18aef2afb
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-22 21:24:02 -04:00
Doug Coleman
3dce2eda19
use iota in replicate
2009-08-22 21:00:18 -04:00
Doug Coleman
7b7f22fae2
Revert "use iota in replicate"
...
This reverts commit 88d1f0d78a
.
2009-08-22 20:59:56 -04:00
Doug Coleman
87a6e9cb31
use iota in replicate
2009-08-22 20:59:36 -04:00
Doug Coleman
679a7c9b01
temporary fix for core/effects
2009-08-22 20:56:28 -04:00
Doug Coleman
a6c7e9d9d4
use iota in a couple of places
2009-08-22 20:56:16 -04:00
Joe Groff
cb54ca6402
clarify 'deprecated' docs
2009-08-20 18:36:34 -05:00
Joe Groff
93c93a392b
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-20 16:21:58 -05:00
Joe Groff
6089251574
move deprecation to tools.deprecation; load with bootstrap.tools
2009-08-20 16:17:36 -05:00
Joe Groff
400c89daf0
"deprecated" declaration, "deprecation" vocab to track deprecations in the error log
2009-08-20 15:10:42 -05:00
Slava Pestov
79cdc45339
math: move float methods to math.floats
2009-08-20 03:55:19 -05:00
Joe Groff
06ecb30140
make slot initial-values check the class for an "initial-value" word prop; set this word prop on classes.c-types types
2009-08-19 21:28:20 -05:00
Joe Groff
c898593983
decouple struct parsing/printing from tuple parsing/printing a bit
2009-08-19 18:53:44 -05:00
Joe Groff
15a7148de0
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-19 15:48:07 -05:00
Doug Coleman
fadede137c
use iota
2009-08-19 08:27:28 -05:00
Doug Coleman
3313098936
use iota
2009-08-19 08:21:45 -05:00
Slava Pestov
cfe54f8968
classes, words: fix unit tests for method inlining change
2009-08-18 17:20:17 -05:00
Slava Pestov
507e2b7f3a
Fix some unit test failures
2009-08-18 03:49:05 -05:00
Doug Coleman
0cbad41547
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-18 03:45:20 -05:00
Doug Coleman
308d383ccd
small fix for lexer
2009-08-18 00:10:23 -05:00
Daniel Ehrenberg
8120bdebea
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-18 00:02:29 -05:00
Daniel Ehrenberg
62cd1d280c
Fixing docs typo in math.floats
2009-08-18 00:02:19 -05:00
Slava Pestov
030b1b816c
Add inline declarations for various assorted methods
2009-08-17 22:32:21 -05:00
Joe Groff
24d9a8635c
Merge branch 'struct-classes' of git://factorcode.org/git/factor
2009-08-17 21:26:19 -05:00
Slava Pestov
bf57d78b09
compiler.tree.modular-arithmetic: >fixnum elimination and value info annotations were too aggressive
2009-08-17 01:20:25 -05:00
Doug Coleman
2f125eeb93
fix docs
2009-08-15 14:02:18 -05:00
Doug Coleman
7c92ab1ea5
move if-zero etc to math, remove 1-/1+ from math
2009-08-14 14:27:23 -05:00
Joe Groff
6fe7fe72c7
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-14 10:55:05 -04:00
Doug Coleman
3f3d57032b
Delete empty unit tests files, remove 1- and 1+, reorder IN: lines in a lot of places, minor refactoring
2009-08-13 19:21:44 -05:00
Joe Groff
fd02e59ea1
fix bootstrap
2009-08-13 12:05:20 -04:00
Joe Groff
ca592b9654
extend T{ } syntax to build structs
2009-08-12 15:40:06 -04:00
Joe Groff
25c3434892
pprint structs with tuple syntax
2009-08-12 13:16:43 -04:00
Doug Coleman
686b3e348e
use ERROR: in several places instead of throwing strings
2009-08-11 23:09:02 -05:00
Joe Groff
3ac907cbc2
tuple-ish structs
2009-08-11 22:13:18 -04:00
Doug Coleman
02becc26fc
add docs for if-zero etc, add docs for 10^
2009-08-11 18:45:01 -05:00
Doug Coleman
15ae8fb673
fix sgn docs
2009-08-11 18:15:24 -05:00
Doug Coleman
14ef1649d4
add if-zero/when-zero/unless-zero to core/ and update usages
2009-08-11 17:59:40 -05:00
Brad Christensen
f8405e9c55
A number of documentation fixes.
...
* Short-circuit combinators now show correct stack effect for quots
* Groups and Clumps unchecked examples corrected, made runnable in listener
* Class operations had duplicate link to class-types
* Protocol slots readability fixed
* Tuple word property for "tuple-layout" corrected to "layout"
* cond>quot sentence started in lowercase
* Method precedence code example missing stack effect for GENERIC:, M: integer explain changed to detail an integer
* Motivation for default streams readability
* Default input and output streams duplicate readln link removed from output stream words section
* Looping combinators do description clarified
* Make philosophy missing space
* Linear order protocol duplicate after? link removed
* Parsing words readability fix
* Copied note regarding with-compilation-unit from define to define-declared and define-inline
2009-08-10 23:34:25 -07:00
Joe Groff
0376cf0f9d
allow commas in numeric literals
2009-08-10 19:33:27 -04:00
Philipp Brüschweiler
230061783a
misc small documentation fixes, some fixes for factor.vim, changed permissions of vm/* to 644
2009-08-10 21:33:07 +02:00
Slava Pestov
926c46841b
classes.intersection: make flatten-class more accurate. It is still not perfect, but it fixes the case where a generic word has a method on a tuple class, and another method on an intersection of a mixin with another tuple classes
2009-08-07 22:30:57 -05:00
Slava Pestov
805b0b2430
Merge branch 'master' of git://github.com/bogiebro/factor into bogie
2009-08-05 22:20:40 -05:00
Slava Pestov
3b2fd98e7c
Refactor source-file-errors a little bit to remove some code duplication, and so that clicking 'Edit' in error list tool works for parse errors in unit tests
2009-08-04 21:01:21 -05:00
Sam Anklesaria
1145f49a47
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-03 20:09:05 -05:00
Slava Pestov
07ea78df57
sequences: map, 2map, 3map use new map-integers combinator; last two no longer depend on integers-as-sequences
2009-08-03 13:30:55 -05:00
Sam Anklesaria
07b34c6d0a
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-03 10:13:27 -05:00
Doug Coleman
a67a424644
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-02 23:18:09 -05:00
Joe Groff
7c5ef08aab
[ [ ... ] compare ] sort => [ ... ] sort-with
2009-08-02 20:09:23 -05:00
Joe Groff
cdf964579d
sorting: sort-with and inv-sort-with combinators to simplify common [ [ ... ] compare ] sort idiom
2009-08-02 20:01:54 -05:00
Doug Coleman
eb61ffc56d
use itoa in more places
2009-08-02 18:18:31 -05:00
Slava Pestov
67fd6b34dc
Merge branch 'master' of git://factorcode.org/git/factor
2009-08-02 10:27:10 -05:00
Joe Groff
7392013d46
to-fixed-point combinator + docs
2009-08-02 09:51:15 -05:00
Slava Pestov
c1c8424605
Compiler speedups
2009-08-02 09:16:21 -05:00
Joe Groff
06eeedcb4c
change-tracking-tuple class. subclasses will have a "changed?" slot that gets set to true when any slot is modified
2009-07-31 21:48:17 -05:00
Joe Groff
dd3c90bf11
add file-stem word to io.pathnames as the counterpart to file-extension. write docs for both
2009-07-30 20:58:32 -05:00
Sam Anklesaria
c54189ce19
Merge branch 'master' of git://factorcode.org/git/factor
2009-07-29 15:51:33 -05:00
Slava Pestov
4359a10259
sequences: add declaration so that array-flip compiles better
2009-07-28 21:33:12 -05:00