Commit Graph

457 Commits (0e55a173a00d7e6dc1cc19e819fae9fcae56ffe3)

Author SHA1 Message Date
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 c7142e4281 threads: use context-switching primitives 2010-03-29 20:40:17 -04:00
Slava Pestov 99771eb689 bootstrap.compiler: fix joint dependencies declared here 2010-03-29 13:14:26 -04: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 e6b9e54454 stack-checker.known-words: fix load error 2010-03-27 03:35:01 -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 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
Slava Pestov fb06bbcae7 stack-checker.errors.prettyprint: give it some smart quotes lovin' 2010-03-17 19:20:28 +13: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 8687a7e283 Merge branch 'master' of git://factorcode.org/git/factor into row-polymorphism 2010-03-12 14:36:13 -08:00
Joe Groff dfbe1211f7 pre-chew the bite-sized morsels of stack-checker.row-polymorphism so they're easy for old people to digest 2010-03-11 14:09:18 -08:00
Slava Pestov 16ddd015d3 typed: forgetting a final class would throw an error while recompiling typed words depending on it 2010-03-12 10:22:35 +13:00
Joe Groff 26ff757de4 carve the tough, gamey steak of stack-checker.polymorphism into chewable morsels 2010-03-11 00:53:40 -08:00
Joe Groff b9bced9a5e update docs for unbalanced-branches-error 2010-03-09 18:42:10 -08:00
Joe Groff 34b29af245 non-polymorphic input parameter check was too strict: wouldn't allow ( x -- ) for ( x x -- x ), for example 2010-03-09 15:57:00 -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 3abf1f1ef7 stack-checker.row-polymorphism: modify check-variables to enforce non-polymorphic stack effects 2010-03-08 19:44:01 -08:00
Joe Groff 21aa4632c8 refactor stack-checker.row-polymorphism a little 2010-03-08 19:32:25 -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 8159a19187 combine unbalanced-branches-error and invalid-quotation-input into one error 2010-03-07 22:23:24 -08:00
Joe Groff 9e6f84bc24 declare effect on inputs to infer-if in non-literal case, so we get a better error than "unbalanced drop call/nip call" 2010-03-07 21:37:24 -08:00
Joe Groff 6689113519 unify inner-d-index when unifying branches; close a few other leaks where meta-d could have been popped without updating inner-d-index 2010-03-07 20:44:50 -08:00
Joe Groff 66687d6b21 reuse @ and _ from fry in placeholders for invalid-quotation-input errors rather than making our own redundant placeholder symbols 2010-03-07 20:08:35 -08:00
Joe Groff f353b13bbc add unit test from quotation that fails to infer during bootstrap.compiler 2010-03-07 20:07:30 -08:00
Joe Groff 4cd6ad840d add tests from old row-polymorphism implementation to stack-checker unit tests 2010-03-07 19:13:41 -08:00
Joe Groff 1512ed12f3 further improve error message for invalid quotation inputs using a table display with the actual quotation effects determined so far 2010-03-07 18:40:58 -08:00
Joe Groff ea4545e366 improve error message for invalid quotation inputs by referencing each declared-effect to its other references 2010-03-07 18:27:55 -08:00
Joe Groff 011a39457e clear away some rebar 2010-03-07 18:11:44 -08:00
Joe Groff 6b9a79159d tweak declared-effect to wrap the existing known instead of introducing a new value, so we don't confuse the compiler 2010-03-07 18:07:42 -08:00
Joe Groff b14d59030f add stack variable unification to M\ declared-effect infer-call* 2010-03-07 17:51:41 -08:00
Joe Groff bbbda64ee7 add a with-effect-here combinator that determines the effect of a scoped subset of the stack checker 2010-03-07 16:54:25 -08:00
Joe Groff 63ad397cc1 tweak recursive call site checking to consider declared-effects equivalent to their wrapped values 2010-03-07 11:55:47 -08:00
Joe Groff 339cc8f04e row polymorphism new approach: wrap polymorphic quotation inputs in a "declared-effect" value. M\ declared-effect infer-call* will then assert the effect of declared-effect values during the normal course of stack inference 2010-03-07 11:54:57 -08:00
Joe Groff 68dd644233 add unit test to show that polymorphic check breaks inference of inline recursive words 2010-03-06 12:28:09 -08:00
Joe Groff 9571bf6d4b give terminating stack effects a pass in the polymorphic checker 2010-03-05 21:51:38 -08:00
Joe Groff 15e6a7fa5e move error summaries for effect parsing errors to debugger vocab 2010-03-05 21:50:40 -08:00
Joe Groff 26e4bb818a reuse infer-call* for polymorphic inference, which handles curried quotations. tests can pass with real "each" etc. now 2010-03-05 15:20:55 -08:00
Joe Groff c9162c5e31 fix stack error in stack-checker.row-polymorphism 2010-03-05 14:34:50 -08:00
Joe Groff 4892bf1d47 refactor stack-checker slightly to fix circular dependency 2010-03-05 14:27:36 -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 1b1ccb71a4 make tests pass 2010-03-04 22:43:01 -08:00
Joe Groff 053ba583fc improve error reporting 2010-03-04 21:51:49 -08:00
Joe Groff 31640ea9c6 nested scopes were messing up stack checker state 2010-03-04 20:15:26 -08:00
Joe Groff 23de281186 initial implementation of row-polymorphism check 2010-03-04 19:30:08 -08:00
Daniel Ehrenberg 7074979745 Moving new-sets to sets 2010-02-26 16:01:01 -05: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 31a0d98e02 Merge branch 'master' into new-alien-pointers
Conflicts:
	basis/alien/c-types/c-types.factor
	basis/stack-checker/dependencies/dependencies.factor
2010-02-22 10:32:59 -08:00
Slava Pestov 23a1f0ed8c alien: some code cleanups and fixes 2010-02-23 01:28:56 +13:00
Slava Pestov eb3f8632dd stack-checker.alien: now that C types are words, the compiler can add dependencies on them when compiling alien words. This triggers the necessary recompilation when C types are redefined 2010-02-22 21:32:41 +13:00
Joe Groff c4cc70b92c stack-checker.dependencies: extend c-type-word method for depends-on-c-type to all words (so it works for non-c-types like void) 2010-02-21 23:13:12 -08:00
Joe Groff 310b3df2ec stack-checker.dependencies: add method for pointers to depends-on-c-type 2010-02-21 22:31:32 -08:00
Slava Pestov 2c34ecbdb5 stack-checker.dependencies: add depends-on-c-type 2010-02-22 19:25:09 +13:00
Slava Pestov c5a62b14e7 stack-checker.dependencies: fix load error 2010-02-20 12:08:14 +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
Slava Pestov 60296be964 typed: only unbox final classes. Fixes bug reported by littledan 2010-02-18 02:39:12 +13:00
Slava Pestov f01487eb83 A few documentation fixes 2010-02-17 00:05:36 +13:00
Slava Pestov 747974f4ae vm: nuke unused (string>float) primitive 2010-02-08 08:16:56 +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 7de81976a5 Revert "macros: macro body is now defined in its own subword, for compile-time stack effect checking"
This reverts commit 24de7c52f0c3f21cfcdb80235cac7296b0401c85.
2010-02-03 23:11:29 +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 b7fde7af27 macros: macro body is now defined in its own subword, for compile-time stack effect checking 2010-02-03 23:11:22 +13:00
Brad Christensen 9b9322ea1e A number of documentation fixes and cleanup. 2010-02-03 00:05:03 -07:00
Slava Pestov 2c63161c84 stack-checker.dependencies: make conditional dependencies more robust 2010-01-31 01:55:35 +13:00
Slava Pestov ea9dbf2ea1 compiler.crossref: more space-efficient storage of dependency information 2010-01-30 09:29:02 +13:00
Slava Pestov fa4f7d8ccf Clean up some code in preparation for a refactoring 2010-01-30 09:29:02 +13:00
Slava Pestov c438e84bd0 compiler.crossref: add next-method dependency 2010-01-30 09:29:01 +13:00
Slava Pestov 6cc68e889e stack-checker.dependencies: add tuple layout dependencies for use by 'new' and 'boa' 2010-01-30 09:29:00 +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 c058343167 Add some utility words to stack-checker.dependencies in preparation for a refactoring 2010-01-30 09:28:59 +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 817bc02392 compiler.tree.propagation.call-effect: clear out dependency tracking variables to ensure that infer calls made by call( as part of the compile process doesn't pollute the dependencies of the word being compiled 2010-01-30 09:28:57 +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
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
Slava Pestov 00328c85e0 vm: remove vm-ptr primitive 2010-01-20 17:06:49 +13:00
Slava Pestov 580cbe75c6 Make stack-checker throw proper errors for primitives that do not have static stack effects 2010-01-20 16:37:58 +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 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 7f7e1e4e1d Help lint fixes for iota 2010-01-15 17:04:14 +13:00
Slava Pestov 7155447aed stack-checker: add inputs and outputs words, since 'infer (in>>|out>>) length' was coming up a lot 2010-01-15 08:04:14 +13:00
Slava Pestov e4c53f67b0 stack-checker.errors.prettyprint: fix prettyprinting of unbalanced-branches-error 2010-01-15 07:51:36 +13:00
Slava Pestov df4fb4a3ee Removing integers-as-sequences 2010-01-15 07:15:33 +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 e8892d9cde stack-checker: fix unit test 2010-01-07 17:40:23 +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 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 0612bc6177 Factor source files should not be executable 2009-11-21 17:50:43 -06:00
Slava Pestov 1d16152057 stack-checker: fix error message printed when do-primitive is inferred 2009-11-19 19:43:41 -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 ea36783fb3 Fix bootstrap 2009-11-13 07:55:47 -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 064c00f78d New identity-hashcode primitive 2009-11-10 21:18:54 -06:00
Slava Pestov aed9dcff53 stack-checker: fix help lint 2009-11-10 19:19:59 -06:00
Slava Pestov 425e9d0dde Fix some test failures 2009-11-10 16:48:06 -06:00
Slava Pestov 473cc7db4a stack-checker: tighten some screws in error reporting 2009-11-09 00:17:24 -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 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
Slava Pestov 1d4ec1959d stack-checker.known-words: fix declared output type for dispatch-stats primitive 2009-11-06 04:36: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
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
Slava Pestov 47df580081 tools.time: overhaul 2009-11-05 01:07:59 -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 37abac7407 Merge branch 'master' into new_gc 2009-10-30 21:04:37 -05:00
Joe Groff 32450a0575 add missing USING: to stack-checker tests 2009-10-30 20:49:09 -05:00
Slava Pestov 6f9336c29e Merge branch 'master' into new_gc 2009-10-30 03:03:05 -05:00
Joe Groff 2ecf3fb568 fix load errors from bootstrapping 2009-10-28 12:51:03 -05:00
Joe Groff 935c0797c3 update existing code for [let change 2009-10-27 22:05:37 -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 91cec17e52 vm: get GC events working, -verbosegc switch now produces more info 2009-10-26 23:57:26 -05:00
Slava Pestov cf247c23a2 vm: room. now prints mark stack size, and total/contiguous free space 2009-10-25 13:18:06 -05:00
Joe Groff 372718304c remove the monocle from inference docs and clarify it a bit 2009-10-24 20:57:49 -05:00
Slava Pestov bf5d0de840 peg.ebnf: turn $unchecked-examples into $examples 2009-10-19 03:44:50 -05:00
Slava Pestov 107c96f642 vm: code heap compaction at runtime using compact-gc primitive 2009-10-16 11:39:35 -05:00
Keith Lazuka 405e5d015b docs: change $subsection to $subsections 2009-10-02 12:15:48 -04: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
Joe Groff 0354ab60ba Merge branch 'master' of git://factorcode.org/git/factor 2009-09-17 15:31:43 -05:00
Slava Pestov 7f1c33f363 stack-checker.errors: improve documentation a bit 2009-09-17 13:27:15 -07:00
Joe Groff 3b4330fcf6 get things to a point where they bootstrap again 2009-09-15 21:43:18 -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 7cf4e608e5 alien: move code for supporting CONSTANT: foo 123 { "int" foo } C types into one place instead of the old scattershot approach 2009-08-27 21:49:25 -05:00
Slava Pestov 030b1b816c Add inline declarations for various assorted methods 2009-08-17 22:32:21 -05: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
Doug Coleman 379c17a284 Throw typed errors instead of strings for calling/executing non-callables 2009-08-11 22:40:29 -05:00
Slava Pestov 60f4f4c16e combinators.short-circuit: speed up in non-optimized code 2009-07-18 03:33:45 -05:00
Daniel Ehrenberg ee3e84a1f8 define-partial-eval framework in propagation pass makes it easy to add transforms; moving some transforms from stack checker to propagation, making them stronger 2009-07-16 00:34:50 -05:00
Daniel Ehrenberg bb06facb01 new is inlined in the propagation pass when the class is known 2009-07-14 14:16:39 -05:00
Daniel Ehrenberg 4aa3e2135a Unit tests for inference behavior of call( and execute( 2009-07-14 01:23:21 -05:00
Daniel Ehrenberg 47500fad06 call( and execute( inline known quotations/words in the propagation pass 2009-07-14 01:12:45 -05:00
Daniel Ehrenberg 500c784bd7 Minor reorganization of stack-checker.call-effect 2009-07-10 01:05:03 -05:00
Daniel Ehrenberg 23b8f48267 stack-checker.known-words:infer-special uses a word property 2009-07-10 00:52:08 -05:00
Slava Pestov 0068a3d965 stack-checker: fix doc typo reported by OneEyed 2009-06-21 15:11:41 -05:00
Doug Coleman 407377fc98 rename peek -> last and update all usages 2009-05-25 16:38:33 -05:00
Slava Pestov 43a1834e0b stack-checker: fix case where invalid code could infer 2009-05-23 15:50:35 -05:00
Slava Pestov 66a9416473 Update documentation for stricter vocabulary search path semantics 2009-05-16 00:29:21 -05:00
Slava Pestov fb6df472a2 Cleaning up USING: lists for new strict semantics 2009-05-14 16:54:16 -05:00
Slava Pestov 65faa3fda3 Fix unit tests and load errors for slip removal 2009-05-10 17:03:41 -05:00
Slava Pestov a366909c25 Removing slip usage from basis 2009-05-10 15:28:22 -05:00
Slava Pestov 029d93a838 Make walker work better with call( and breakpoints which are nested inside combinators 2009-05-05 09:12:32 -05:00
Slava Pestov a63ad6a7a5 Remove cruddy string encoding/decoding code from VM 2009-05-02 13:45:38 -05:00
Slava Pestov 05ecd04e2f macro call sites don't need an inlined-dependency on the macro 2009-05-01 05:52:34 -05:00
Slava Pestov 9d1c4f39a8 Some gold plating 2009-05-01 02:03:22 -05:00
Slava Pestov a70a2c0e31 Fix some test failures and add an unportable tag 2009-04-30 22:56:15 -05:00
Slava Pestov e5cdb7ac2d call( fast-path now supports curry and compose 2009-04-30 21:08:29 -05:00
Slava Pestov a79e3eb687 Passing an invalid parameter to 'declare' doesn't break the compiler anymore 2009-04-30 20:40:47 -05:00
Slava Pestov fc4894fbdf Replace ratio and complex built-in types with tuples defined in the library. This frees up two lo-tags, so move array and quotation over to these tags and update compiler for new tags 2009-04-30 00:27:35 -05:00
Slava Pestov 5f6c074edd Split up types.c/h into smaller files, remove optimized slot from F_WORD struct 2009-04-28 17:26:11 -05:00
Slava Pestov e940f6fd8b Add method dispatch statistics 2009-04-28 16:58:05 -05:00
Slava Pestov 7e84daf0f1 Move (execute) to kernel.private 2009-04-26 02:42:37 -05:00
Slava Pestov 356537593e Get rid of execute-unsafe now that (execute) is more versatile 2009-04-25 21:50:34 -05:00
Slava Pestov 7aa65b5b5f Fixing new method dispatch implementation 2009-04-25 19:41:27 -05:00
Slava Pestov 3dc9fdf9db Fleshed out new dispatch code 2009-04-24 20:43:01 -05:00
Slava Pestov 8c5b0373a8 Working on new method dispatch system 2009-04-24 15:31:06 -05:00
Slava Pestov 5649cc7a0a Compiler warnings are no more 2009-04-23 22:17:25 -05:00
Slava Pestov c2fe2a4fea Improve stack checker documentation 2009-04-23 03:48:32 -05:00
Slava Pestov 57e1de5181 stack-checker.transforms doesn't need make anymore 2009-04-22 21:26:55 -05:00
Slava Pestov d3cffcbee2 Slightly more efficient compilation of 'new' 2009-04-22 21:26:22 -05:00
Slava Pestov 1dd3ed519f Revert part of an earlier ccompiler.tree.checker hange to fix smalltalk.eval regression 2009-04-22 21:03:53 -05:00
Slava Pestov 20ca578ed1 stack-checker.transforms: fix tests 2009-04-22 04:21:15 -05:00
Slava Pestov 28b9e474dd Set more no-compile word props 2009-04-21 23:18:19 -05:00
Slava Pestov 057f75e9a1 Refactor compiler.tree.builder to fix various regressions 2009-04-21 23:02:00 -05:00
Slava Pestov 469c9ee21d Debugging stack checking 2009-04-21 16:09:53 -05:00
Slava Pestov f38d2f91f6 Words which didn't compile cannot be run at all 2009-04-20 22:05:41 -05:00
Slava Pestov 05f3f9dcb9 Fixing unit tests for stack effect inference changes 2009-04-20 21:15:19 -05:00
Slava Pestov 8414693142 stack-checker: trust word declarations instead of recursively checking them 2009-04-20 18:44:45 -05:00
Slava Pestov 5165d811d5 Changing the stack effect of a generic word could break the compiler 2009-04-20 04:21:00 -05:00
Doug Coleman 7a1841f59b (( -- )) eval -> eval( -- ) 2009-04-17 15:49:21 -05:00
Doug Coleman dba4c0d589 fixing compiler errors in basis 2009-04-17 12:46:04 -05:00
Slava Pestov 65b27354ad Merge branch 'master' into smarter_error_list 2009-04-14 15:07:22 -05:00
Slava Pestov e595576dc3 Make more words infer 2009-04-12 23:01:14 -05:00
Slava Pestov c4be8bd65a Refactor error code so that error types are registered; listener prints a summary of errors 2009-04-12 16:08:46 -05:00
Slava Pestov 0fda643ab1 Optimizing string>number 2009-04-11 20:30:51 -05:00
Slava Pestov 8290624733 Macro expansion errors are now wrapped 2009-04-10 07:08:16 -05:00
Slava Pestov 0a7485190b compile-error-type => source-error-type; make test failures global 2009-04-10 03:52:12 -05:00
Slava Pestov 7adb76aaf4 Factor out some compiler error code into source-files.errors 2009-04-09 04:50:38 -05:00
Slava Pestov 2b384a7742 Re-organize some error-related code, three-pane look for compiler errors tool, add Joe's icons 2009-04-08 23:05:45 -05:00
Slava Pestov 07f585a81d Error list tool work in progress 2009-04-06 15:24:21 -05:00
Slava Pestov 9907bd9fe2 Add fseek primitive so that c-streams can seek. This lets the UI work without native IO 2009-04-03 10:16:25 -05:00
Slava Pestov b53960dace Add compiler transform for index with a literal sequenc 2009-03-27 20:05:23 -05:00
Doug Coleman 8b7fcce399 update code for usages of add-library 2009-03-25 23:00:19 -05:00
Slava Pestov 8385e9d9f5 Fixing compile errors, test failures and help lint failures 2009-03-23 17:12:41 -05:00
Slava Pestov 385892be64 Make the member? transform better 2009-03-21 03:10:21 -05:00
Slava Pestov bb92336fb8 Change a throw to a rethrow 2009-03-18 19:44:38 -05:00
Slava Pestov 2ed97f5a24 Various fixes for call( 2009-03-17 18:53:44 -05:00
Slava Pestov 786475102d Make more code infer 2009-03-17 02:19:50 -05:00
Slava Pestov e981090045 Inline caching for call( 2009-03-16 23:02:55 -05:00
Slava Pestov be4fb1e7d9 Move call( and execute( to core 2009-03-16 20:11:36 -05:00
Slava Pestov 1559b74640 Add new check-datastack primitive and re-implement call( with it, instead of using with-datastack. call( is now 5x faster 2009-03-16 06:16:51 -05:00
Slava Pestov 06f29ab7e4 give-up-transform now uses a cached stack effect. Slight performance improvement when compiling calls to member? with a non-literal quotation 2009-03-13 04:28:24 -05:00
Slava Pestov 8f1240cf96 Forgetting a word doesn't call reset-word anymore, fixing an issue where a word calling a forgotten word wouldn't compile because the 'declared-effect' word prop was not set 2009-03-13 00:40:18 -05:00
Slava Pestov 21f8ba2917 Change another throw to rethrow in stack checker 2009-03-11 03:17:06 -05:00
Slava Pestov 52fef83061 Fix various unit tests 2009-03-07 15:58:14 -06:00
Slava Pestov 7b9491066c Fix conflict in images vocab 2009-03-04 21:43:56 -06:00
Slava Pestov 74573c65f5 Change a throw to rethrow so that we don't lose the original stack trace 2009-03-04 21:38:05 -06:00
Slava Pestov ca7a155b72 Merge branch 'master' into new_ui 2009-03-01 20:13:05 -06:00
Slava Pestov 03cb32ad9c Make execute( faster, add execute-unsafe( and make effect tuple slots read only 2009-03-01 20:12:35 -06:00
Slava Pestov 25a877e50b Merge OneEyed's patch 2009-02-28 17:06:55 -06:00