Commit Graph

674 Commits (59e3cf93b73a671e313b55042348d5abcc8763fc)

Author SHA1 Message Date
Benjamin Pollack 2c3dd8c3c8 Remove executable bit from tons of files that aren't 2014-11-05 20:40:42 -08:00
John Benediktsson 5961cfb7b9 io.encodings: fix for read-until seps not containing \n. 2014-10-31 09:33:59 -07:00
Doug Coleman 632ee276e1 core: Remove trailing whitespace. 2014-10-31 01:14:31 -07:00
Doug Coleman 5e16e54b98 io.encodings: For decoders, try to gobble up the next newline if cr>> is true in stream-read-until. Add unit test. Fixes . 2014-10-31 00:58:53 -07:00
John Benediktsson 7082246447 io: change stream-bl to use write1. 2014-06-04 09:13:21 -07:00
John Benediktsson 57f9d78892 improve help by linking to types directly. 2014-05-23 20:20:15 -07:00
John Benediktsson 8293425783 io.encodings.ascii: moving to core. 2014-05-20 11:47:38 -07:00
John Benediktsson 98935b7f15 docs: change ``{ $quotation "( x -- y )" }`` to ``{ $quotation ( x -- y ) }``. 2014-05-18 20:09:10 -07:00
John Benediktsson ca6cf294fc io.streams.memory: use constructor syntax. 2014-04-29 13:20:03 -07:00
John Benediktsson bc655bc061 io: change with-output-stream* example to unchecked. 2014-04-15 13:35:35 -07:00
Björn Lindqvist b72fa3ba0a Docs: fixed doc example errors triggered by help-lint and added with-disposal where applicable 2014-04-14 08:42:10 -07:00
Björn Lindqvist 2cbea3cb31 Docs: a few more examples for words that were missing them 2014-04-14 08:42:09 -07:00
Björn Lindqvist 1c74268af7 io: with-output-stream* example 2014-04-14 08:42:08 -07:00
Björn Lindqvist eaca04de3b libc: several vocabs now need to depend on libc 2014-04-02 12:13:00 -05:00
Björn Lindqvist 753b2f0177 io.files: make wait-for-fd generic and dispatch depending on backend
do-ssl-accept need to call wait-for-fd so it needs to be generic. On
windows it's a noop but on unix it will wait for the fd.
2014-04-02 12:12:49 -05:00
Björn Lindqvist 5f38df7741 io.sockets.secure.windows: reading and writing from ssl sockets
Unified the drain and refill generics and put their definition in
io.files. They are now used by both the windows and unix ssl backend
for io. Windows ssl kind of works now, but the error cases are not
implemented correctly.
2014-04-02 12:12:14 -05:00
John Benediktsson 0fd53ac54c io.streams.byte-array: some cleanup. 2014-03-11 11:27:50 -07:00
John Benediktsson 9090aa2bd1 io.streams.byte-array: add test of empty byte array. 2014-03-11 11:26:05 -07:00
John Benediktsson 80f88318a6 io.streams.sequence: support slices (fix io.streams.peek test failure). 2014-03-10 19:56:42 -07:00
John Benediktsson ee040a242c io.streams: some more test cases for sequence-read-until. 2014-03-10 15:29:11 -07:00
John Benediktsson e966659105 io.streams.sequence: make sure not to return ``f``. 2014-03-10 15:10:29 -07:00
John Benediktsson e55be4e70f Revert "Revert "io.encodings: string>byte-array-fast can use (byte-array).""
This reverts commit af6975593756e353654b67b1bf1db7dd06f8c114.
2014-03-07 11:19:45 -08:00
John Benediktsson 72453cdc99 Revert "io.encodings: string>byte-array-fast can use (byte-array)."
This reverts commit f9881290cdb3238365f0bc5d126325236b4c2123.
2014-03-07 09:46:19 -08:00
John Benediktsson c4472362ea io.encodings: string>byte-array-fast can use (byte-array). 2014-02-27 21:10:05 -08:00
John Benediktsson d2cd57d68f io.streams.sequence: use member? to support bignum separators. 2014-02-25 10:13:05 -08:00
John Benediktsson b0195bb448 io: minor cleanups. 2014-02-25 10:04:08 -08:00
John Benediktsson bf1f4e9aa2 io.streams.sequence: cleanup by moving type checks. 2014-02-25 09:32:47 -08:00
John Benediktsson 1170df3e71 io.streams.byte-array: faster with-byte-writer. 2014-02-25 08:23:32 -08:00
John Benediktsson f243b31ddd io.streams.sequence: rename (stream-seek) to sequence-seek. 2014-02-25 07:56:28 -08:00
John Benediktsson ee9ead89f8 io.streams.sequence: bounds check sequence-read-until. 2014-02-25 07:52:07 -08:00
John Benediktsson dbfa18e8fc io.streams.byte-array: faster M\ byte-reader stream-read-unsafe. 2014-02-24 21:40:38 -08:00
John Benediktsson 1acf307e15 io.streams: make stream-element-type inline on string-reader and byte-reader. 2013-12-02 17:44:03 -08:00
John Benediktsson 30f450d21a io.encodings: slight performance improvement to byte-array>string-fast. 2013-11-24 20:04:15 -08:00
John Benediktsson 13ec450ac8 io.encodings.string: faster for ascii and utf8. 2013-11-24 16:08:26 -08:00
John Benediktsson 3c5ca8195e io.encodings.utf8: fix accidentally scratchpad. 2013-11-24 14:34:53 -08:00
John Benediktsson 0806a8ce15 io.encodings: string>byte-array-fast for when aux>> is f. 2013-11-24 13:43:00 -08:00
John Benediktsson eafc775bbb io.binary: speed up signed>. 2013-11-24 12:01:21 -08:00
John Benediktsson 77d2abc06c io.binary: faster le> and signed-be>. 2013-11-24 09:57:40 -08:00
John Benediktsson 6d09b34b94 io: default each-block-size is 65536, but add words that allow you to use a different size. 2013-09-19 13:46:39 -07:00
Doug Coleman d38fdb4433 io.encodings: Add a stream-tell method for decoder streams. 2013-06-04 17:53:15 -07:00
Doug Coleman a5781ff8cc io.encodings.utf16n: Rename utf16n. 2013-03-23 17:19:24 -07:00
John Benediktsson a2c241baea io.binary: faster >be. 2013-03-21 17:39:34 -07:00
John Benediktsson 67a2b9dc9a io.encodings: speed up ascii and utf8 stream-read-until. 2013-03-18 13:35:22 -07:00
John Benediktsson ee1eb8bf09 io.encodings: this appears to be faster and produce smaller code. 2013-03-15 12:15:52 -07:00
John Benediktsson 86b2dea8d5 io.encodings: remove duplication in decoder-readln. 2013-03-15 10:50:40 -07:00
John Benediktsson 7bf1173bc3 io: adding stream-bl. 2013-03-14 19:23:10 -07:00
John Benediktsson 5487480126 core: cleanup USING lists. 2013-03-05 10:34:47 -08:00
John Benediktsson 10bd89b439 io.files: fix testcase for renamed icon file. 2012-11-30 18:28:20 -08:00
John Benediktsson 5c810c2fa5 io.pathnames: remove file-directory (redundant to parent-directory). 2012-10-23 09:47:57 -07:00
John Benediktsson 65678aeeb2 io.pathnames: adding file-directory. 2012-10-22 18:09:58 -07:00
Doug Coleman 3582a6c624 kernel: Add 4dup, 4drop, and 4cleave. 2012-10-22 09:47:34 -07:00
John Benediktsson c1850f416a sequences: fix docs to use "dst" as a convention. 2012-09-19 16:45:28 -07:00
Doug Coleman 6c4043bb25 io: Make stream-contents call stream-contents* and do the disposal in the top-level. Fixes . 2012-08-25 17:03:51 -07:00
John Benediktsson 980f1236cf io: improve docs for stream-copy*. 2012-08-14 15:12:19 -07:00
John Benediktsson 1a3e8a2994 io.backend: fix docs to show nanoseconds instead of micros. 2012-08-01 12:08:18 -07:00
John Benediktsson 3c03803f21 io.streams.sequence: minor refactor, minor speedup. 2012-07-27 21:12:26 -07:00
John Benediktsson 68f8d5bc17 io: more inlining. 2012-07-25 20:55:01 -07:00
John Benediktsson 4e72d80256 Using "same?" in more places. 2012-07-21 10:22:44 -07:00
John Benediktsson b9900248b7 io: simplify stream-exemplar. 2012-07-16 19:30:10 -07:00
John Benediktsson a642f39a9a io.streams.sequence: faster stream-read-until. 2012-07-11 18:26:41 -07:00
John Benediktsson 752b5c6887 io.streams.memory: adding with-memory-reader. 2012-06-18 17:24:21 -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 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
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 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  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 943596575a use radix literals 2011-11-23 19:03:40 -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
* 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
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 .
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 .
2011-11-09 14:29:12 -08:00
Doug Coleman c731dc6edb Rename lookup to lookup-word. 2011-11-06 16:00:00 -08:00
Joe Groff 186bf65a00 constants for special object hardcoded literals 2011-11-02 12:54:50 -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 51c033a1f6 Fix all failures in the linux64 build email 2011-10-24 19:33:09 -07:00
John Benediktsson 5a943b32c4 Remove stack effects from HELP: declarations. 2011-10-20 19:36:11 -07:00
John Benediktsson f4a6e10818 More cleanup of unused stuff. 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
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
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