Doug Coleman
3e2fc2f0cb
classes: optimize instance? for classoids
2011-11-22 20:38:07 -08:00
Doug Coleman
30ade9023c
classes: add syntax for intersection{ and union{ anonymous classes. make classoid a mixin.
2011-11-22 18:49:42 -08:00
Doug Coleman
627bce6615
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
d3a4e72f95
classes.maybe: move maybe definition from classes.union to classes.maybe
2011-11-22 02:46:36 -08:00
Doug Coleman
14dbf929ee
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
86d5e8529c
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
c882d96644
strings: inline >string and 1string
...
Fixes #340
2011-11-15 19:15:19 -08:00
Joe Groff
0f876e93b6
rearrange source-file-error error. to load earlier
...
Fixes #359
2011-11-15 18:26:35 -08:00
John Benediktsson
bae84edb38
slots: fix initial value tests.
2011-11-14 10:26:08 -08:00
John Benediktsson
fbfa57ea01
assocs: 5-8% performance improvement to assoc>map. Fixes #69 .
2011-11-12 17:02:33 -08:00
Slava Pestov
2cf72ef255
Fix bootstrap
2011-11-12 16:45:04 -08:00
Slava Pestov
74d33de1ab
hashtables: small cleanup
2011-11-12 15:35:51 -08:00
Slava Pestov
081527628d
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
beb0f48da9
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
a3228dc7a7
math.parser: undo some inlining to shrink size
...
For #318 .
2011-11-11 15:49:53 -08:00
John Benediktsson
3926133d4f
hashtables: fix docs for new-key@, and note that quadratic probing is used now.
2011-11-10 16:20:59 -08:00
Joe Groff
26c7c564bf
bootstrap.primitives: remove counting "profiling"
2011-11-10 16:04:42 -08:00
Joe Groff
5b43301eb6
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
2b855bcb5f
hashtables: allow re-using deleted tombstones. Fixes #381 .
2011-11-10 13:05:51 -08:00
John Benediktsson
15fee03989
combinators: fix docs for case.
2011-11-10 11:20:28 -08:00
Joe Groff
65c17f7ace
slice boa -> <slice-unsafe>
...
If you didn't define it, don't boa it
2011-11-09 19:22:09 -08:00
Joe Groff
0617838fb9
io: clean up some mess
2011-11-09 19:11:04 -08:00
Joe Groff
f5bdff14f6
io: fix each-block-slice typo
2011-11-09 18:06:58 -08:00
Joe Groff
53d027928c
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
f0f0751910
sequences: improve docs for map-sum.
2011-11-09 15:00:08 -08:00
Joe Groff
ce6669d87d
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
1de810f416
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
b3598c2384
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
be9f8a99f0
Rename lookup to lookup-word.
2011-11-06 16:00:00 -08:00
Doug Coleman
43c5c9162e
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
1dc540f60e
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
201109937e
vocabs.loader: Fix spacing. Remove unit test.
2011-11-02 19:30:54 -07:00
Doug Coleman
484836be3a
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
75cba3106a
remove BSD,solaris,etc. misc platform support code
2011-11-02 17:13:51 -07:00
Doug Coleman
351ec4ec2f
Add a unit test vocabulary for vocabs.loadeer.
2011-11-02 16:47:53 -07:00
Doug Coleman
86974b11a2
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
83215f75d3
sequences: relate max, min, supremum, infimum docs
...
Suggested by @yac. Closes #321 .
2011-11-02 13:43:06 -07:00
Joe Groff
c8aab6659d
Revert "syntax: make it so PRIMITIVE: verifies primitives"
...
This reverts commit 200ea70cffc4bdc74a97e4981442161f64cdbaa3.
2011-11-02 13:23:11 -07:00
Joe Groff
b3c0064012
primitives: fix effect of (clear-samples)
2011-11-02 13:23:11 -07:00
Joe Groff
3c7bd83230
add sampling profiler primitives for bootstrap
2011-11-02 13:23:10 -07:00
Joe Groff
a834ebd493
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
9c02c17cb8
move counting profiler to tools.profiler.counting
2011-11-02 13:23:09 -07:00
Joe Groff
4ab6d18cbd
tools.profiler: rename to tools.counting-profiler
2011-11-02 13:23:06 -07:00
Joe Groff
8aebe4677b
constants for special object hardcoded literals
2011-11-02 12:54:50 -07:00
Doug Coleman
be12f2b27d
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
eec7602aed
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
52cf183e4e
classes.union: unions of built-in types now have more efficient predicates. Fixes #292
2011-10-29 17:11:03 -07:00
Doug Coleman
d3ba70a7d8
Remove the lexer-factory because nothing uses it. Update usages.
2011-10-29 01:11:19 -07:00
Doug Coleman
2bcb000873
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
9ce1f894a2
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
323ee6f53e
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
cb6f175ef8
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
313a8dbe88
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
1641adc511
Use dip instead of swap swap for making file streams
2011-10-26 11:48:26 -07:00
Doug Coleman
b5b27676c4
Update Windows for word renames, fix lint errors
2011-10-24 21:50:02 -07:00
Doug Coleman
f05e33fa37
Fix all failures in the linux64 build email
2011-10-24 19:33:09 -07:00
Doug Coleman
b61f9f6903
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
7b177d6237
vocabs.loader: actually use the root cache.
2011-10-24 16:19:59 -07:00
Doug Coleman
96da8df16e
Rename class to class-of
2011-10-24 06:47:42 -05:00
Doug Coleman
a7f6982354
Rename vocab to lookup-vocab
2011-10-24 06:42:54 -05:00
Doug Coleman
3c99d38a7f
Remove docs for removed word
2011-10-24 00:57:14 -05:00
Doug Coleman
c66849384e
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
a13676f3b6
Remove stack effects from HELP: declarations.
2011-10-20 19:36:11 -07:00
John Benediktsson
20a1d63df4
hash-sets: separate <hash-set> and >hash-set to match other containers. Fixes #154 .
2011-10-19 11:35:25 -07:00
John Benediktsson
8641187299
More cleanup of unused stuff.
2011-10-19 11:01:16 -07:00
John Benediktsson
e00d06cd09
Cleanup some uses of global [ ] bind.
2011-10-19 11:01:16 -07:00
Doug Coleman
412c7263f1
Forgot using in io.tests
2011-10-19 01:16:41 -07:00
Doug Coleman
2a6c59a305
Add with-error>output word and test
2011-10-19 00:56:11 -07:00
John Benediktsson
8fddc17165
system: fix stack effect for exit in docs.
2011-10-18 20:03:19 -07:00
Joe Groff
b230b306f5
io: input-stream and output-stream mixins
2011-10-18 16:25:09 -07:00
Joe Groff
8ae554ef6e
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
f2741b34a4
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
89e98cd99b
io.encodings.utf16: auto-use strikes again
2011-10-17 21:46:08 -07:00
Joe Groff
35a5bdabc3
formatting
2011-10-17 21:23:36 -07:00
Joe Groff
49cf017399
io.encodings.utf16: guess-*coded-length hints
2011-10-17 21:23:11 -07:00
Joe Groff
6d6864b47c
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
7adce45340
io.streams.sequence: missed a USING:
2011-10-17 21:23:10 -07:00
Joe Groff
a73dc7b4b5
io: remove higher-order stack effects
...
More stack checker breakage
2011-10-17 21:23:10 -07:00
Joe Groff
7b4e62b87f
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
d35c67dde4
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
10bcb933db
io: document new words
2011-10-17 21:23:09 -07:00
Joe Groff
0c225d1e8d
io.streams.c: help-lint
2011-10-17 21:23:08 -07:00
Joe Groff
21e2fdc25c
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
440130d618
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
372f7c6614
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
c4d9599a00
io: get variables out of stream-copy loop
2011-10-17 21:23:07 -07:00
Joe Groff
7cf22250ce
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
2e1f72697f
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
28af1529bc
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
1e37b525a3
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
e2e9ce991d
io: remove each-block* because it's not useful
2011-10-17 21:23:03 -07:00
Joe Groff
af370097a4
io.encodings: decoders can't really seek or tell
2011-10-17 21:23:03 -07:00
Joe Groff
92edf6f98a
io.encodings: re-encrypt into stack-ese for core
2011-10-17 21:23:03 -07:00
Joe Groff
991e08c880
io.encodings: read-unsafe for decodersâ€
...
†currently uses locals, so not bootstrappable
2011-10-17 21:23:02 -07:00
Joe Groff
9fc11e5853
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
b3d7c1575d
io: tweak each-block* to be byte- or char-agnostic
2011-10-17 21:23:02 -07:00
Joe Groff
cb0f50029a
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
65b3984490
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
f6b54c50cc
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
9737ca956f
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
db68af8df5
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
0497bbb365
io.streams.c: Document fputc primitive
2011-10-17 21:22:58 -07:00
Joe Groff
3bd23a9840
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
d8f5004776
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
2530cf5657
Rename complete-effect to scan-effect
2011-10-17 10:25:27 -07:00
John Benediktsson
7494418bf8
More lint cleanups.
2011-10-16 19:33:16 -07:00
John Benediktsson
1097e59026
Cleanup more lint warnings.
2011-10-16 13:01:58 -07:00
John Benediktsson
fd853f9958
Cleanup some lint warnings.
2011-10-15 19:19:44 -07:00
Joe Groff
c7dd28b499
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
eb55f8575c
Cleanup more lint warnings.
2011-10-14 12:31:46 -07:00
John Benediktsson
f419934d6a
Cleanup lint warnings.
2011-10-14 11:47:24 -07:00
Joe Groff
882d7766f9
kernel: higher-order effects for *keep
2011-10-14 10:45:02 -07:00
John Benediktsson
419f40f4ed
math.parser: cleanup uses of 16/8/2 >base/base>.
2011-10-14 10:09:12 -07:00
John Benediktsson
54b9b3bf14
namespaces: adding a "with-global" word to replace "global [ ] bind".
2011-10-13 17:21:59 -07:00
John Benediktsson
2eccaa5a82
generic.parser: adding tests.
2011-10-13 16:49:54 -07:00
John Benediktsson
f3a70c2a99
Change method parsing to validate stack effects. Fixes #236 .
2011-10-13 16:41:17 -07:00
John Benediktsson
463c7292d1
Fix M: stack effects.
2011-10-13 16:41:17 -07:00
Doug Coleman
ac89b4dffa
Link ?first ?second ?last from an article.
2011-10-13 15:53:31 -07:00
John Benediktsson
b3f5154cc7
sequences: adding ?last for symmetry.
2011-10-13 13:04:24 -07:00
John Benediktsson
59fe95c9e9
sequences: define ?first and ?second.
2011-10-13 12:53:46 -07:00
John Benediktsson
099177a8f4
sequences: adding find-index.
2011-10-12 19:41:54 -07:00
John Benediktsson
da21f5ca61
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
60b1115452
Rename forget-struct-slot-accessors -> forget-slot-accessors
2011-10-06 13:21:18 -07:00
John Benediktsson
7e8d598265
classes.tuple: can't assume hashcode* returns fixnum.
2011-10-06 11:53:50 -07:00
John Benediktsson
437165dbfb
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
7b7b0d4542
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
921c81d92a
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
4281c740b8
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
c7818fa326
Update docs for lookup-method.
2011-10-03 15:55:53 -07:00
Doug Coleman
e75e2b1f14
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
4629f6c274
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
171cd93573
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
3fe8f1daf4
hashtables: moving hash-combine to hashtables.
2011-10-02 20:29:49 -07:00
Doug Coleman
e1678b928a
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
064d7fd311
Clean up a parser docs as per suggestions.
2011-10-02 20:08:23 -07:00
John Benediktsson
28ec5e085b
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
bce0dd9272
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
ad874e71ed
Fix help-lint errors for recent hashtable changes.
2011-10-02 17:49:11 -07:00
John Benediktsson
205417d765
classes.tuple: switch to python's tuplehash(). Fixes #153 .
2011-10-02 13:49:45 -07:00
John Benediktsson
49168e5ca8
hashtables: switch to quadratic probing.
2011-10-02 13:49:45 -07:00
John Benediktsson
593479f480
words: prevent zero hashcodes. Fixes #222 .
2011-10-02 13:49:45 -07:00
Doug Coleman
94f3ca3b8c
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
684f6b655c
effects: removing split-shuffle.
2011-10-02 09:26:40 -07:00
John Benediktsson
732902ac97
sequences: removing 2unclip-slice.
2011-10-02 09:26:20 -07:00
Doug Coleman
300138eb4d
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
7d5887c1c5
classes.tuple: error-class should call-next-method before resetting itself.
2011-09-26 11:54:55 -07:00
John Benediktsson
0e3d598e69
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
322e3ba109
assocs: improve stack effect docs for "?at".
2011-09-26 11:32:20 -07:00
John Benediktsson
f8cb5324b7
classes.tuple: adding test cases for error-class and support forget-class.
2011-09-26 11:00:32 -07:00
John Benediktsson
4a3ae7bab3
Defining an "error-class", and printing error tuples out with ERROR:. See #188 .
2011-09-26 11:00:32 -07:00
Doug Coleman
d5aa789b46
Remove extraneous using from math/
2011-09-25 19:32:35 -07:00
John Benediktsson
8e30fa450f
vocabs: adding docs for 'parent-vocab?' and 'parent-vocabs'.
2011-09-25 18:36:20 -07:00
John Benediktsson
9382316823
vocabs: adding 'parent-vocab?' and 'parent-vocabs'.
2011-09-25 18:32:03 -07:00
John Benediktsson
370c4d6da6
Fixing docs for recent stack effects additions.
2011-09-24 22:08:54 -07:00
John Benediktsson
cce00c2651
math.order: Removing stack effect (not quite right).
2011-09-23 17:46:49 -07:00
John Benediktsson
ac8b589f9a
Adding stack effects.
2011-09-23 17:46:40 -07:00
Doug Coleman
fba4a48a69
Fix sequences docs for change-nth stack effect and example needed using section
2011-09-21 10:09:03 -05:00
John Benediktsson
de467551aa
sequences: adding stack effects for change-nth, map-integers, and interleave.
2011-09-19 20:49:57 -07:00
John Benediktsson
c838bb63b1
Revert "classes.singleton: fix "summary" of singletons. Fixes #145."
...
This reverts commit d820c86974 .
2011-09-19 17:46:52 -07:00
John Benediktsson
3801e91ba3
Revert "classes.mixin: fix definitions for MIXIN:."
...
This reverts commit f625612f89 .
2011-09-19 17:46:40 -07:00
John Benediktsson
f625612f89
classes.mixin: fix definitions for MIXIN:.
2011-09-19 17:22:50 -07:00
John Benediktsson
d820c86974
classes.singleton: fix "summary" of singletons. Fixes #145 .
2011-09-19 16:49:11 -07:00
Joe Groff
571ef865e6
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
b82a70263c
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
004b20df12
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
17e0fbe501
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
bde57f6df2
sets: update docs for "combine".
2011-09-17 08:14:14 -07:00
John Benediktsson
c1233cdf8b
lexer: more clear code.
2011-09-17 08:14:13 -07:00
John Benediktsson
e6234537a3
assocs: adding tests for "assoc-stack".
2011-09-17 08:14:13 -07:00
Joe Groff
8ccc797a7a
words: move change-word-prop from delegate.private to words
2011-09-15 15:55:54 -07:00
Joe Groff
444339abb0
alien.strings: handle symbol arrays in symbol>string
2011-09-13 15:10:48 -07:00
Doug Coleman
60913a6d7b
Fix string docs.
2011-09-13 15:45:56 -05:00
Slava Pestov
20c6aaddec
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
41eb5cae4b
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
597ca1b543
Fix for parser-notes? being removed
2011-09-07 04:59:35 -05:00
Doug Coleman
433dc02702
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
fcce06f27f
hash-sets: remove unused import.
2011-09-06 11:26:29 -07:00
Slava Pestov
db989ca6aa
Add test case to memory-tests.factor for recent large object allocation bug
2011-09-05 16:47:32 -07:00
Slava Pestov
b25f21f70c
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
5a7389a94c
hash-sets: simpler <hash-set>.
2011-09-03 16:38:42 -07:00
John Benediktsson
6f388a7013
sets: adding test for cardinality of arrays.
2011-09-03 16:34:33 -07:00
John Benediktsson
af91c8baeb
hash-sets: initialize hashtable capacity to length of sequence.
2011-09-03 14:46:26 -07:00
John Benediktsson
f90135a924
math: fix docs for 'when-zero'.
2011-09-02 21:13:29 -07:00
John Benediktsson
6575dc6a2f
sets: fix cardinality of sequences, and speed up subset?.
2011-08-27 20:20:56 -07:00
John Benediktsson
e2ac602eb6
Merge remote-tracking branch 'factorcode/master'
2011-08-27 17:26:11 -07:00
Joe Groff
3757210244
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
c5243a079b
parser: fix a typo in the docs.
2011-08-26 21:07:16 -07:00
John Benediktsson
5814fe3f29
Merge remote-tracking branch 'erg/master'
2011-08-26 18:53:58 -07:00
John Benediktsson
ab05560aa9
Merge branch 'cleanup'
2011-08-26 18:49:25 -07:00
John Benediktsson
248b0df6fc
Spelling fixes to documentation.
2011-08-26 16:20:31 -07:00
Doug Coleman
747f420107
Add a bunch of unit tests for 100% code coverage in sets vocab
2011-08-26 15:03:55 -05:00
Doug Coleman
3f1900e8c7
Fix unit test in strings
2011-08-25 11:10:40 -07:00
Slava Pestov
4c4f67164b
strings: fix broken unit tests introduced by recent commit
2011-08-24 23:42:33 -07:00
Doug Coleman
2f9f2dcbf3
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
9f7e4c0e6a
sequences, fix stack effect of (accumulate)
2011-08-25 00:43:37 +02:00
Doug Coleman
fa872b6b12
Fix help lint for when*,unless*
2011-08-23 12:28:16 -07:00
Doug Coleman
e4a99d465d
Merge git://factorcode.org/git/factor
2011-08-17 22:07:57 -07:00
Joe Groff
54c9b7d4f4
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
51489e3ef8
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
a569b7b9cc
subset? was broken...
2011-08-16 14:19:24 -07:00
John Benediktsson
0b926bd241
combinators: fix typo in docs for case.
2011-08-10 16:25:21 -07:00
Joe Groff
148b93ce3a
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
7bb3a616c9
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
7051ffa60c
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
1ed2bc6231
32 and 64 bit Linux PPC support
2011-05-23 23:36:14 -04:00
Erik Charlebois
c11f044725
Use .factor-rc etc on Windows too, files can begin with dots just fine
2011-05-23 23:36:13 -04:00
John Benediktsson
952cead32f
Merge branch 'master' into sorting
2011-05-03 20:51:53 -07:00
Slava Pestov
ae11aa08db
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
8928fe2e17
Update code that did ">alist sort-" to just "sort-".
2011-04-07 09:01:21 -07:00
John Benediktsson
9fe9751042
sorting: change sort-keys and sort-values to generics.
2011-04-07 08:57:26 -07:00
otoburb
bf7d88f311
Merge branch 'master' of git://github.com/slavapestov/factor
2011-04-04 13:04:00 +00:00
Slava Pestov
624bd46cef
io: fix help lint
2011-04-03 17:37:28 -07:00
otoburb
5bb0efeda1
Merge branch 'master' of git://factorcode.org/git/factor
2011-03-26 20:19:52 +00:00
John Benediktsson
25438d721b
io: improve stack effects.
2011-03-25 18:30:52 -07:00
John Benediktsson
c326a0d771
io: implement "stream-contents" in terms of "each-stream-block".
2011-03-25 13:58:16 -07:00
John Benediktsson
a52adf7160
io: improve signature of each-block and each-line.
2011-03-25 12:20:51 -07:00
otoburb
efa1f8a9ed
Tuple subclassing help article: Fixed typo
2011-03-24 04:48:48 +00:00
otoburb
e3143908c1
Checksums help article update: Added internet checksums brief description
2011-03-23 03:51:55 +00:00
otoburb
d1c3cf1f75
Typo in "make.factor" documentation
2011-03-14 06:07:32 +00:00
Joe Groff
1867ec79a0
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
cb510cc815
Merge branch 'doc-fixes' of git://github.com/keitahaga/factor
2011-02-25 22:37:39 -08:00
Slava Pestov
acac6b0a1d
combinators: fix help lint
2011-02-25 21:06:10 -08:00
Keita Haga
69d3b2a9ba
definitions: remove unused vocabulary in refactored a.factor
2011-02-24 15:37:41 +09:00
Keita Haga
f767d60641
definitions: import of make vocab in refactored a.factor
2011-02-20 04:53:35 +09:00
Keita Haga
2c324b14df
In several documentation, remove whitespace before or after the colon or period
2011-02-10 01:51:13 +09:00
Keita Haga
7f8909adc0
assocs: fix a few typos in docs
2011-02-08 00:35:15 +09:00
Keita Haga
e1845bf3d5
continuations: fix typo in docs
2011-02-07 23:42:44 +09:00
Keita Haga
9c632a47ed
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
cdab0bdbec
combinators: insert a space after a comma in the documentation
2011-02-04 21:04:08 +09:00
Keita Haga
7e63158f3b
combinators: minor improvement to usage example of cond word
2011-02-04 17:53:00 +09:00
Keita Haga
5d3155bef5
words: replace the trailing comma with a period in the article of words
2011-02-04 16:25:35 +09:00
Keita Haga
c9c02e7264
syntax: trim trailing whitespace to $syntax section in the HOOK:'s help page
2011-02-04 15:56:02 +09:00
Slava Pestov
843fc514e3
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
98b4a5859d
sets: fix help lint
2011-01-29 00:07:08 -05:00
Slava Pestov
4fff63036a
sets: document combine word
2011-01-28 22:56:46 -05:00
Slava Pestov
247005fe16
Merge branch 'master' of git://github.com/mrjbq7/factor
2011-01-28 21:56:18 -05:00
John Benediktsson
b121795e0f
sets: improve stack effect for "combine".
2011-01-26 17:24:55 -08:00
Keita Haga
fee3fc60dd
classes.tuple: minor fix to $errors section in the boa word's help page
2011-01-26 21:26:12 +09:00
Keita Haga
27aba4035e
sequences: surround a $example with a $examples to the if-empty word's help
2011-01-26 15:06:35 +09:00
Keita Haga
e15076b5e8
effects: add missing right parenthesis in description of stack-effect word
2011-01-23 21:51:52 +09:00
Keita Haga
e8303bc68b
assocs: fix description of inputs and outputs values in many words
2011-01-17 18:26:20 +09:00
Keita Haga
4e1a0f662a
assocs: correct the class of output value in assoc-subset? word
2011-01-17 17:35:07 +09:00
Keita Haga
75e70b1096
assocs: fix sample output in usage example of assoc-map word
2011-01-17 05:32:08 +09:00
Keita Haga
38892d050a
combinators: minor improvement in usage example of case word
2011-01-17 00:42:07 +09:00
Keita Haga
beca2894a1
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
bce5ee748e
kernel: add stack effect declaration to usage example of object class in docs
2011-01-16 17:58:36 +09:00
Keita Haga
5009f89ab6
sequences: put a period to description of trim-head-slice word
2011-01-16 09:59:27 +09:00
Keita Haga
bc879945f1
io.pathnames: enclose a few example outputs in double quote characters
2011-01-14 20:07:10 +09:00
Keita Haga
a4f58f010d
alien: fix a couple of typos in docs
2011-01-14 19:59:14 +09:00
Keita Haga
6133287f4f
sequences: enclose some $examples in '$examples'
2011-01-14 19:29:17 +09:00
Keita Haga
fa5b054865
math: fix typo in docs
2011-01-09 02:29:33 +09:00
Keita Haga
d76dd07065
sbufs: fix typo in docs
2011-01-08 22:37:58 +09:00
Keita Haga
60cd620fd7
continuations, io.binary: add whitespace between '"' and '{ $snippet' in the documentation
2011-01-08 22:26:06 +09:00
Slava Pestov
91babe9849
Merge branch 'doc-fixes' of git://github.com/keitahaga/factor
2011-01-05 20:27:55 -08:00
John Benediktsson
9220c43519
Merge branch 'master' of git://github.com/slavapestov/factor into fast-sets
2011-01-05 17:30:48 -08:00
John Benediktsson
86125cbd38
assocs: use assoc-size to short-circuit equality checks.
2011-01-05 17:28:06 -08:00
Keita Haga
b043e48e9e
remove useless whitespace in several documentation
2011-01-05 15:55:34 +09:00
Keita Haga
bec72c6d8c
sequences: fix typos in docs
2011-01-05 14:01:11 +09:00
Keita Haga
f3eac37893
source-files: fix typo to record-checksum word description in docs
2011-01-05 02:10:19 +09:00
Keita Haga
a9e74ab4fc
effects: fix typo in docs
2011-01-04 21:30:37 +09:00
Keita Haga
c9c1d89bfa
classes.algebra, grouping, parser: replace 'seqence' with 'sequence' in docs
2011-01-04 21:02:11 +09:00
Keita Haga
880b03ef1a
combinators: fix typo to 'booleans' article and 'case' description in docs
2011-01-04 19:18:56 +09:00
Keita Haga
b356a49113
io: fix typo in docs
2011-01-04 18:12:43 +09:00
John Benediktsson
27d90dc181
sets: minor optimization.
2011-01-03 20:36:48 -08:00
John Benediktsson
169c666101
sets: make intersect, intersects?, and subset? faster.
2010-12-29 04:53:22 -08:00
Slava Pestov
f6c093d266
sets, bit-sets: cleanups
2010-12-27 20:10:37 -08:00
John Benediktsson
7afca548dc
sets: improving the speed of set=.
2010-12-27 19:33:18 -08:00
John Benediktsson
2534bd5054
sets: adding cardinality word.
2010-12-27 19:22:36 -08:00
Slava Pestov
25fb472f73
Fix unit test failures caused by alien.data change
2010-12-25 22:34:12 -08:00
Keita Haga
ff5e74ebcf
io.files.info.unix, sequences: few $examples and $unchecked-examples turn into $codes
2010-12-23 04:05:06 +09:00
Keita Haga
40291dcf53
sequences, syntax, vocabs.parser: remove useless whitespace in docs
2010-12-23 03:42:41 +09:00
Slava Pestov
4d3e474034
Merge branch 'doc-fixes' of git://github.com/keitahaga/factor
2010-12-18 16:02:18 -08:00
Slava Pestov
d33eac01f4
math.integers: fix underflow and overflow behavior
2010-12-18 16:00:17 -08:00
Keita Haga
c700a726b5
syntax: slightly to fix examples of QUALIFIED: and QUALIFIED-WITH:
2010-12-19 01:16:54 +09:00
Keita Haga
82526b8ba6
classes.tuple: minor fixes in tuple-examples article
2010-12-05 21:27:25 +09:00
Keita Haga
815f33b80f
generic: fix using to M\ example in docs
2010-12-05 05:11:38 +09:00
Slava Pestov
bdfa81eebe
Merge branch 'doc-fixes' of git://github.com/keitahaga/factor
2010-12-01 03:02:38 -08:00
Keita Haga
8c3993a056
io.pathnames: fix typo in docs
2010-11-28 00:47:59 +09:00
Slava Pestov
b0b5f3ac97
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
00a26db857
vocabs: fix typo in docs
2010-11-14 17:14:40 +09:00
Slava Pestov
9948004217
math.integers: bignum/f rounding was wrong (reported by Joe Groff)
2010-11-13 16:02:12 -08:00
Slava Pestov
b16c0d8993
math.integers: fix 0 0 bignum/f (reported by Joe Groff)
2010-11-12 19:49:18 -08:00
Slava Pestov
dbfade143c
splitting: fix stack effect declaration of (split)
2010-11-06 17:50:39 -07:00
Samuel Tardieu
f31916555a
Add documentation for assocs:assoc-refine
2010-10-11 11:09:46 +02:00
Slava Pestov
d865b366dd
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
1c344420ce
Implement and document stream-peek
2010-10-08 06:34:19 -07:00
Doug Coleman
a5c1cc33be
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
a2eb56d399
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
fbe868289c
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
11957c636c
Fix throw-restarts example
2010-09-11 19:41:06 -05:00
John Benediktsson
7ac352ca14
sequences: fix typo in docs.
2010-09-10 13:22:48 -07:00
Slava Pestov
ea2690661e
Merge branch 'docs-linearization-typo' of http://github.com/mncharity/factor
2010-09-09 20:33:11 -07:00
Mitchell N Charity
85030e861a
algebra-docs: fix a typo
2010-09-09 17:39:11 -04:00
Doug Coleman
7016ffbb7b
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
612a683973
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
e0e09234cf
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
6617eca683
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
776f184ed0
serialize, io.streams.byte-array: fix unit tests for utf8 encoding strictness
2010-08-25 17:51:44 -07:00
Slava Pestov
12e182acea
io.encodings.utf8: formatting fix
2010-08-25 17:47:26 -07:00
Joe Groff
a5125844b0
io.encodings.utf8: also guard against decoding code points > 0x10FFFF
2010-08-25 09:28:39 -07:00
Joe Groff
9080ce8903
io.encodings.utf8: guard against decoding overlong encodings
2010-08-25 09:18:33 -07:00
Slava Pestov
f30b9c484c
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
3ae7cccd74
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
425808bb57
classes: remove fragile unit test
2010-08-21 18:10:09 -07:00
Slava Pestov
bb22925d4b
generic: clean up unit tests a bit
2010-08-21 13:04:37 -07:00
Slava Pestov
84698985ad
Officially drop PowerPC port
2010-08-15 20:10:11 -07:00
Philipp Brüschweiler
79b134f45e
slots: use em dashes
2010-08-14 18:27:30 +02:00
Joe Groff
c304a3630a
Merge remote branch 'Blei/master'
2010-08-14 09:20:15 -07:00
Slava Pestov
f3dfae04ba
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
4e584356d9
slots: the docs for writer used obsolete (>>slot) syntax
2010-08-13 23:50:10 +02:00
Slava Pestov
05f3dc7e76
combinators: make the behavior of 'case' consistent between the optimized and unoptimized forms
2010-07-30 14:21:30 -04:00
Slava Pestov
801197a58d
classes.algebra: make it work better to fix bug reported by Sascha Matzke
2010-07-29 19:57:23 -04:00
Slava Pestov
7d792778f5
FFI rewrite part 7: compile callback bodies with the optimizing compiler
2010-07-28 00:49:26 -04:00
Philipp Brüschweiler
b326f77b2e
Merge branch 'gtk' into gtk-image-loader
2010-07-26 19:29:17 +02:00
Slava Pestov
4415a0924c
compiler.tree.finalization: record dependencies on inlined predicates
2010-07-23 16:31:15 -07:00
Philipp Brüschweiler
23f6201e65
ui.backend.gtk: use png instead of ico to represent icons
2010-07-22 22:48:18 +02:00
Philipp Brüschweiler
5ea5881ccd
ui.backend.gtk, tools.deploy.unix: support for icons
2010-07-22 12:39:16 +02:00
Doug Coleman
ce0d76a580
Clean up vocabulary list, remove unused/poorly-named word from io
2010-07-09 13:32:09 -05:00
Slava Pestov
f3ae3b7fc8
parser: update unit test
2010-07-08 15:41:28 -04:00
Slava Pestov
066a4597b4
io.ports: fix stream-seek with seek-relative seek type (reported by Joe Groff)
2010-07-07 17:32:30 -04:00
Slava Pestov
feb2c5952b
io.ports: fix stream-tell implementation
2010-07-07 02:27:34 -04:00
Slava Pestov
e935681743
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
bbfb952741
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
8174abe287
remove system-micros word from factor src tree
2010-06-22 01:49:11 -05:00
Doug Coleman
b45ed7a048
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
97c3450427
Remove system_micros from vm, implement gmt hook on windows
2010-06-16 23:39:16 -05:00
Slava Pestov
281061d386
vocabs.loader: tweak docs
2010-06-13 18:12:57 -04:00
Doug Coleman
90fa6908c0
Sets docs -- testing set membership: member? -> in?
2010-06-05 18:55:46 -05:00
Slava Pestov
69aa6153eb
combinators: tweak docs
2010-06-03 21:34:55 -04:00
Slava Pestov
1a6e5324c7
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
a2833d31c9
Fix typo in stack effect docs
2010-05-21 12:48:04 -05:00
Slava Pestov
8d6ed23cab
io.files: fix unit test
2010-05-19 20:47:22 -04:00
Slava Pestov
500882d603
io: missed a few byte-array>int-array in unit tests
2010-05-19 16:22:39 -04:00
Joe Groff
74b25d8018
syntax: correct documentation for ratio syntax
2010-05-18 18:59:54 -07:00
Joe Groff
d649daaf4f
math: declare quotation stack effects on each-integer, times, find-integer, all-integers?
2010-05-13 14:30:19 -07:00
Slava Pestov
4f4fa18625
sequences: remove unused 2reverse-each word
2010-05-10 00:46:29 -04:00
Slava Pestov
d2d466de29
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
94147b220b
Fix typo in between? stack effect docs
2010-05-05 18:16:54 -05:00
Slava Pestov
bb0579ecf9
Updating tests for recent compiler changes
2010-05-03 17:34:30 -04:00
Slava Pestov
b9fc73e25f
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
fd84bb98bc
strings: move string-nth primitive out of the VM and into the library
2010-05-03 17:34:12 -04:00
Joe Groff
5861b4e7e6
kernel: update *dip docs to match stack effects and not mention retain stack
2010-05-01 17:03:03 -07:00
Slava Pestov
2ab437e1f1
vocabs: add a link to the parse-time word lookup article
2010-04-28 05:04:09 -04:00
Daniel Ehrenberg
2fa116980f
Fixing issue where require-when could create a circularity
2010-04-21 00:40:40 -05:00
Doug Coleman
c78628fbe9
Add callstack-bounds primitive to vm/ for use with javascriptcore library
2010-04-19 20:08:15 -05:00
Slava Pestov
4fe845977f
Merge branch 'require-when' of git://github.com/littledan/Factor
2010-04-19 14:06:52 -05:00
Slava Pestov
28a9cf79ff
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
daebac5f52
Adding docs on null? and the changes for require-when
2010-04-18 14:44:52 -05:00
Daniel Ehrenberg
7cdb543dd5
Fixing require-when
2010-04-18 14:08:21 -05:00
Daniel Ehrenberg
ab0bd7b88f
Attempting to make require-when work with multiple vocabs
2010-04-17 17:19:37 -05:00
Daniel Ehrenberg
30e0471ade
Adding null? word to test if a set is empty
2010-04-17 16:25:51 -05:00
Slava Pestov
05dba2ba81
sequences: remove stupid <flat-slice> word
2010-04-17 00:58:30 -05:00
Slava Pestov
94cf6e1fec
sequences: 'accumulate' now outputs a sequence of the same type as its input
2010-04-14 21:51:00 -07:00
Joe Groff
8db81fc0e9
Merge branch 'master' of factorcode.org:/git/factor
2010-04-14 19:37:54 -07:00
Joe Groff
b0cd256b0f
document FUNCTION-ALIAS:
2010-04-14 16:14:33 -07:00
Joe Groff
4f887eac57
assocs: add effect declarations to assoc combinators
2010-04-14 15:08:32 -07:00
Slava Pestov
775dbefdbc
math.parser: expose a format-float primitive for use by formatting vocabulary
2010-04-13 21:21:28 -07:00
Slava Pestov
3b92172115
Replace 'untested' tag with 'not loaded' and 'not tested' tags
2010-04-13 18:43:01 -07:00
Slava Pestov
e1e6c92111
io.files: fix unit test for forget-tests? flag
2010-04-13 06:14:53 -07:00
Slava Pestov
ee288016f6
sets: fix performance regression in all-unique? word
2010-04-13 04:43:47 -07:00
Slava Pestov
df0f21c48d
compiler.codegen: need to do name decoration with fastcall as well
2010-04-12 18:10:25 -05:00
Slava Pestov
8e1afbd650
Fixing load errors
2010-04-10 17:24:44 -07:00
Slava Pestov
d7ff3faa0f
alien: now that fastcall works better it doesn't need to be private
2010-04-10 16:57:07 -07:00
Slava Pestov
0dc43a94bd
Merge remote branch 'origin/abi-symbols' into fastcall-madness
2010-04-10 00:10:33 -07:00
Slava Pestov
cebbcee9f9
combinators: fix load error
2010-04-06 16:48:30 -04:00
Slava Pestov
67cc74c75e
combinators: call( now throws an error if a quotation that was declared as never returning actually returns
2010-04-06 16:42:30 -04:00
Joe Groff
e8dc04746e
catch merge conflicts in source and report them as such
2010-04-06 13:34:26 -07:00
Joe Groff
3b4f8758b5
Merge branch 'master' of git://factorcode.org/git/factor into abi-symbols
...
Conflicts:
basis/compiler/tests/alien.factor
2010-04-06 12:30:15 -07:00
Slava Pestov
06ac80f098
kernel: add examples for if, when, unless and if*
2010-04-05 19:07:10 -04:00
Slava Pestov
cdc4fb3b62
Get green threads working on Windows
...
- store stack base and limit in TIB
- set up a frame-based structured exception handler in each context's callstack
- boot.x86.32.image has now been replaced by boot.winnt-x86.32.image and boot.unix-x86.32.image
2010-04-03 20:24:33 -04:00
Slava Pestov
30eae10898
continuations: faster with-datastack
2010-04-03 19:10:21 -04:00
Joe Groff
cd0ad27e46
update some more doc examples using old abi strings
2010-04-02 23:16:53 -07:00
Slava Pestov
47f86898d7
vm: pre-allocate context alien
2010-04-02 00:02:21 -04:00
Joe Groff
259d45600b
update alien docs to mention abi symbols
2010-04-01 19:25:24 -07:00
Joe Groff
d6ad21bcc6
make "fastcall" symbol private since it doesn't really work in all cases
2010-04-01 18:34:15 -07:00
Joe Groff
ca9614e746
Merge branch 'master' into abi-symbols
2010-04-01 15:28:36 -07:00
Joe Groff
2890a190a4
alien: add singletons for thiscall and fastcall
2010-03-31 20:30:04 -07:00
Joe Groff
06168b3667
add singletons for stdcall, cdecl, mingw abis
2010-03-31 19:17:06 -07:00
Slava Pestov
de0c2801d2
threads: delete old contexts immediately instead of handing them off to a 'context recycler' thread
2010-03-30 21:47:48 -04:00
Slava Pestov
92b66ada71
sets, hash-sets, bit-sets: fix some typos in the documentation
2010-03-30 01:10:39 -04:00
Slava Pestov
cea2bf4189
threads: use context-switching primitives
2010-03-29 20:40:17 -04:00
Slava Pestov
7360cccdc5
vm: callstack errors were flipped
2010-03-29 01:53:30 -04:00
Daniel Ehrenberg
cacb1f8ebd
Merge branch 'master' into conditional
2010-03-28 19:49:32 -04:00
Slava Pestov
21351e3a25
kernel: don't test callstack overflow on OpenBSD or Windows
2010-03-28 17:58:05 -05:00
Slava Pestov
a04d53c3da
set-context and start-context primitives can now pass parameters around
2010-03-27 08:13:57 -04:00
Slava Pestov
09aa64baaf
vm: report callstack overflow
2010-03-27 07:45:11 -04:00
Slava Pestov
f8134b18cd
Implement start-context and set-context primitives
2010-03-27 02:56:11 -04:00
Slava Pestov
adeb6fb68f
vm: actually use context callstacks when running code
2010-03-26 22:44:43 -04:00
Slava Pestov
ccf8d51137
lexer: fix output type of map-tokens
2010-03-26 16:31:48 -04:00
Slava Pestov
a3413060bb
lexer: each-token and map-tokens did not handle EOF properly
2010-03-26 03:42:07 -04:00
Daniel Ehrenberg
59ee5d825e
Merge branch 'master' of git://factorcode.org/git/factor into conditional
2010-03-19 06:46:16 -04:00
Daniel Ehrenberg
5c0ef36747
Docs for require-when
2010-03-19 06:45:55 -04:00
Daniel Ehrenberg
a2c45378a4
Untested tags for vocabs.loader.test.[mno]
2010-03-19 06:34:25 -04:00
Slava Pestov
af573bd022
Add context-specific special object table, generalizing catchstack_save and current_callback_save fields of context struct
2010-03-18 22:06:00 +13:00
Daniel Ehrenberg
88a4c58cda
Renaming require-if to require-when
2010-03-18 00:24:41 -04:00
Daniel Ehrenberg
df1fce9bba
require-if loads vocabs conditionally, now or later
2010-03-18 00:00:32 -04:00
Daniel Ehrenberg
b0f0c58141
Making <hash-set> faster
2010-03-17 20:12:25 -04:00
Daniel Ehrenberg
a481dc87d4
Fixing spacing in the sets docs
2010-03-16 21:30:17 -04:00
Daniel Ehrenberg
384f854d77
Fixing bugs with sets, including adding new within and without words
2010-03-16 20:17:26 -04:00
Daniel Ehrenberg
1b61e2e5cf
Merge branch 'bags' of git://github.com/littledan/Factor
...
Conflicts:
basis/compiler/cfg/ssa/construction/tdmsc/tdmsc.factor
basis/furnace/auth/auth.factor
basis/stack-checker/backend/backend.factor
2010-03-16 13:28:00 -04:00