Commit Graph

10070 Commits (50dced41d41a4b7e66e6ac82b7b649e597125dcc)

Author SHA1 Message Date
Doug Coleman 41e4c48647 combinators.smart: Fix reduce-outputs, rename quot*n to call-n, rewrite more macros as combinators. 2011-11-28 12:41:50 -08:00
Doug Coleman 9a55bfb5a2 regexp: trivial refactoring 2011-11-28 11:46:15 -08:00
John Benediktsson 1eaea88912 pubsubhubbub support by samueltardieu. Fixes #148. 2011-11-28 09:57:03 -08:00
Alex Drummond 93fa3c1670 CouchDB auth provider (furnace.auth.providers.couchdb) 2011-11-28 09:45:42 -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 63c4bb40e3 tools.deploy.config: docs typos 2011-11-27 14:17:18 -08:00
Joe Groff 975d3f8c2a tools.deploy.shaker: missing using 2011-11-27 14:14:35 -08:00
Joe Groff c64b3575e4 tools.deploy.config: more stern warnings in docs
Warn that deploy-io=3, deploy-math, and deploy-threads are effectively required. Also note that deploy-ui? requires an app bundle deployment on Mac OS X.
2011-11-27 14:14:23 -08:00
Joe Groff b12cdae993 ui.tools.deploy: add doc link to deploy-flags
That's where all the settings are actually described.
2011-11-27 12:37:58 -08:00
Joe Groff 46c1cde14c tools.deploy.macosx: deploy separate VM and image
This is the easiest way to make sure "resource:" works with deployed bundles for now. Single-file executables aren't really an issue with app bundles anyway.
2011-11-27 12:37:58 -08:00
Joe Groff 80bd1aef1c tools.deploy.backend: make-deploy-image back out
So "deploy-image-only" still works
2011-11-27 12:37:57 -08:00
Joe Groff 932315a852 tools.deploy.macosx: oops, logic inversion 2011-11-27 12:37:57 -08:00
Joe Groff f5d7ec72c7 ui.tools.deploy: update deploy-console description
No longer windows specific
2011-11-27 12:37:57 -08:00
Joe Groff e99aa3aba8 tools.deploy.config: update docs 2011-11-27 12:37:57 -08:00
Joe Groff ec1b49fe51 tools.deploy.macosx: tweak bundle vs exe logic
Must deploy an app bundle if the UI is used.
2011-11-27 12:37:56 -08:00
Joe Groff d9a9155a80 tools.deploy: embed image into deployed VM
Also, use the unix backend to deploy non-UI applications on macosx
2011-11-27 12:37:56 -08:00
Joe Groff 19e1046479 tools.deploy.embed: useful factors
Separate the embedding of an image into a VM executable (embed-image) from the copy-and-embed logic (make-embedded-image).
2011-11-27 12:37:55 -08:00
Joe Groff de5cc96286 new module tools.deploy.embed: make self-exe image 2011-11-27 12:37:55 -08:00
Joe Groff 7754ab2c06 io.directories.unix: make copy-file copy perms
Like the docs claim it does
2011-11-27 12:37:54 -08:00
Joe Groff 14031d8794 icon for user-init-errors 2011-11-27 12:06:48 -08:00
Joe Groff ad92bf7486 break circularity 2011-11-27 11:45:28 -08:00
Joe Groff 0f137bafe9 command-line: don't die if factor-rc has an error
Instead, put user-init-errors in the error list.
2011-11-27 10:49:02 -08:00
Joe Groff 8cb78d5bd2 math.complex: pass tests even if number-base set 2011-11-26 17:46:38 -08:00
Joe Groff 13f27f3d9e prettyprint.backend: can't use locals 2011-11-23 20:20:27 -08:00
Joe Groff 6d1a28aca6 prettyprint: use radix prefixes for number-base 2011-11-23 20:05:23 -08:00
Joe Groff 9123360547 tools.disassembler.utils: 0x isn't a name anymore
sorry bro
2011-11-23 19:48:38 -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 29bf4d7214 ui.backend.cocoa.views: clickthrough is bullshit
I don't care what Slava thinks
2011-11-23 11:29:03 -08:00
Joe Groff f225bf7f55 compiler.cfg.finalization: reenable scheduling
Prolog safepoint appears to work with it enabled
2011-11-23 11:11:27 -08:00
Joe Groff 6498bc65ce compiler: emit safepoints in optimized prologs 2011-11-23 11:11:25 -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 f7700809c5 compiler tests: fix using, add tests to make sure instance? inlines 2011-11-23 01:01:11 -08:00
Doug Coleman b37bebb17f compiler.tree.propagation.transforms: fix infinite recursion that was breaking prettyprint 2011-11-23 00:48:05 -08:00
Doug Coleman f90bc5cdb6 classes: optimize instance? for classoids 2011-11-22 20:38:07 -08:00
Doug Coleman 17cc8ad1f3 dlists: use maybe: dlist-link. 2011-11-22 19:38:46 -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 0bdd87dace typed: Teach typed about maybe: foo. Should maybe: foo satisfy unboxable-tuple-class? ? 2011-11-22 02:09:12 -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
Doug Coleman e435a7aa59 cocoa.messages: Apply mrjbq's patch to show the name of the cooca function in sender stubs. rename 'method' in stack effects to 'signature' since we are passing an array with the return value and arguments, not the method. 2011-11-21 16:38:16 -08:00
Joe Groff 9b73ecdf70 io.monitors: kill outdated doc about kqueue on BSD 2011-11-17 16:56:34 -08:00
Joe Groff 07f206b31b vocabs.refresh.monitor: use resolve-symlinks
It already exists and actually works on windows
2011-11-16 20:35:42 -08:00
Joe Groff 41fe611dda random.unix: roll back type assertions
Probably don't really make much difference and are invalid in apps that deploy with io level 2 or lower.
2011-11-16 17:29:46 -08:00
Joe Groff 6de9585114 tools.deploy.macosx: fix path to MiniFactor.nib
Fixes #414.
2011-11-16 17:17:54 -08:00
Joe Groff 02df268261 random: don't assume random-bytes is a byte-vector
It's not anymore.
2011-11-16 10:03:42 -08:00
John Benediktsson 40898bf4d0 editors: fix editing of links. Fixes #411. 2011-11-16 09:18:54 -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 090dc2f410 vocabs.refresh.monitor: remove debug traces 2011-11-15 20:15:11 -08:00
Joe Groff b5c72dab40 vocabs.refresh.monitor: handle symlink paths
On macosx, fsevents always provides the true path for changed files, even if the monitored path includes symlinks. This screws things up if a symlinked path is used as a vocab root. Fixes #404.
2011-11-15 20:04:44 -08:00
Joe Groff 36dac58380 update USING:s 2011-11-15 18:37:30 -08:00
Joe Groff 5a66b3b329 rearrange source-file-error error. to load earlier
Fixes #359
2011-11-15 18:26:35 -08:00
Doug Coleman 9ae3b50a53 dlists: make a dlist-link tuple so you can "be the node" by subclassing it. this allows you go put a type on the obj>> slot. ensure that dlist nodes are returned with prev/next pointers set to f so they can be reused. dlist-filter used to work destructively on the dlist, make a new dlist instead because the combinator relied on using prev/next of deleted nodes. 2011-11-15 16:33:16 -08:00
Doug Coleman 5a2243d481 alien.endian: read 64bit numbers of the opposite endian as two 32bit numbers, then bitor them together 2011-11-15 13:22:49 -08:00
Joe Groff ddcc87f58a command-line.startup: fix help message on windows
Support /? while we're at it. Fixes #323
2011-11-15 13:09:32 -08:00
Joe Groff 1db3d6f051 ui.tools.deploy: remove monkey traps from UI 2011-11-15 12:53:21 -08:00
Joe Groff b0c2f9caae tools.deploy.config: set default io-level 3 2011-11-15 12:52:54 -08:00
Joe Groff a1bb1fbd7a Revert "ui.tools.listener: removing unnecessary spawn."
This reverts commit f8aa8038d3.
Breaks error handling: http://paste.factorcode.org/paste?id=2407
2011-11-15 12:35:25 -08:00
John Benediktsson a248fc28a8 opengl: fix small typo in fix-coordinates stack effect. Fixes #406. 2011-11-15 08:18:22 -08:00
John Benediktsson 4d0d1748f0 ui.tools.listener: removing unnecessary spawn. 2011-11-14 10:16:15 -08:00
Joe Groff 54dcd8a4ea math.vectors.simd: don't try distance on int types
"v- norm" doesn't work right for uint-4s because of underflow, but who's going to call "distance" on a uint vector?
2011-11-13 16:10:27 -08:00
Joe Groff dd8bb5b673 math.vectors.simd: unencrypt check-optimizer
And make it report real information about what values were tested and how they failed
2011-11-13 16:10:27 -08:00
Joe Groff 248066c710 code beautification 2011-11-13 16:10:26 -08:00
Joe Groff a10fa68218 math.vectors.simd: add vcount to the tests
Also add a base case to (approx=) for integer returns. vcount returns an integer even for float vector inputs, but the test machinery isn't smart enough to figure that out and uses (approx=) on the outputs anyway.
2011-11-13 16:10:26 -08:00
Joe Groff 32b7dc116f math.vectors.simd.intrinsics: fix double-2 vcount
Turns out we use MOVMSKPS for double vectors too. Gotta save that extra instruction byte!
2011-11-13 16:10:25 -08:00
Joe Groff 9a19f82470 compiler.tree.propagation: missed using 2011-11-13 16:10:25 -08:00
Joe Groff 873208f986 compiler: more peephole tests for shl/sar 2011-11-13 16:10:24 -08:00
Joe Groff 4261d8bb8d compiler: tighten (simd-select) output class
Ints and smaller (or shorts and smaller on 32-bit) can be assumed to be fixnums. Fixes #393
2011-11-13 16:10:23 -08:00
Joe Groff dd8dda4f48 math.vectors.simd: make vcount work for all ints 2011-11-13 16:10:23 -08:00
Joe Groff 5411a67b22 math.vectors.simd.intrinsics: better fake vgetmask
More accurate simulacrum of PMOVMSKB/MOVMSKPS/MOVMSKPD for non-intrinsic definition
2011-11-13 16:10:22 -08:00
Joe Groff da81cb9035 math.bitwise: don't count the same bits over&over 2011-11-13 16:10:22 -08:00
Joe Groff 706c9ee3b9 math.bitwise: hotrod nonintrinsic fixnum-bit-count 2011-11-13 16:10:21 -08:00
Joe Groff d79b462f75 compiler: add intrinsic for PMOVMSKB/MOVMSKP[SD]
Combined with a fast bit-count this will let us rice byte-counting.
2011-11-13 16:10:20 -08:00
Joe Groff d1786adfe4 new module images.viewer.prettyprint
Pretty-prints image objects as images.
2011-11-13 12:12:23 -08:00
Slava Pestov 910748819d Now that #foo and ##foo are symbols we can remove a bunch of \ 2011-11-12 22:04:26 -08:00
John Benediktsson 96d5c2fac8 ui.operations: fix stack names. 2011-11-12 18:48:18 -08:00
Doug Coleman 62f652a5a1 io.directories: fix delete-file on windows, add unit test 2011-11-12 18:28:07 -08:00
Slava Pestov 07ef058fb0 Fix bootstrap 2011-11-12 16:45:04 -08:00
John Benediktsson 340e69aef3 formatting: improve summary.txt. 2011-11-12 16:18:39 -08:00
Slava Pestov 1d257c1ce4 Prevent predicate engine words from showing up in usage. results 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
Doug Coleman 67a6a51654 editors: wait 300ms for the run-process to possibly fail so errors are reported if the editor is missing or broken 2011-11-12 15:13:34 -08:00
Doug Coleman f7ca2446a3 editors.jedit: return "jedit" when looking for jedit path 2011-11-12 14:36:35 -08:00
Joe Groff e0dc236725 cpu.*.bootstrap: clear faulting flag directly
No reason to go through a safepoint in unwind-native-frames really.
2011-11-12 13:02:57 -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
Doug Coleman 6cca0ea468 compiler.cfg: Rename <##foo> to ##foo, in the low-level IR 2011-11-11 19:48:38 -08:00
Joe Groff 1c99568492 io.sockets.windows: plug receive-from memory leak
Should fix #387.
2011-11-11 17:56:04 -08:00
Joe Groff 88bbffd838 tools.deploy: label small-enough? tests
Put a no-op "vocab name" drop in the small-enough? tests so that it's immediately apparent from build farm errors which vocabs are deploying over the limit.
2011-11-10 19:34:36 -08:00
Joe Groff 316426e1ec tools.profiler.sampling: better test quots
Bump up the iota lengths so the tests don't sporadically fail with no data.
2011-11-10 19:29:20 -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
Joe Groff 433b8e6b6b sequences.parser: fix load error 2011-11-10 12:33:10 -08:00
Joe Groff c8fd36bbdb kill tools.profiler.counting and ui.tools.profiler
Load tools.profiler.sampling from bootstrap/tools instead.
2011-11-10 12:33:10 -08:00
Joe Groff 82e01fb58c new module typed.namespaces: get/set + type check 2011-11-10 10:47:21 -08:00
Slava Pestov 98d98ab04a io.ports: clean up 2011-11-10 00:40:31 -05:00
Joe Groff d685cb6502 io.ports: make read-step inline 2011-11-09 19:59:46 -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 a67931b7c5 io.ports: fix bootstrap
Apparently can't use TYPED: or have HINTS: in the wrong place.
2011-11-09 16:32:47 -08:00
Joe Groff 9443f30b7d io.backend.unix: hints on M\ fd refill
Trims some low-order dispatch overhead for #376.
2011-11-09 16:32:47 -08:00