Commit Graph

376 Commits (079bcaa570a51c55ece8e09bf533f95d33288fbe)

Author SHA1 Message Date
John Benediktsson e654e4afd9 Using "same?" in more places. 2012-07-21 10:22:44 -07:00
Doug Coleman 2e43fab284 stack-checker: meta-d was a word and symbol, now meta-d word and (meta-d) symbol
issuse #358
2012-07-20 12:30:14 -07:00
Doug Coleman 117d57ad92 issue #358: Rename all of the words depends-on-* to add-depends-on* 2012-06-21 08:35:45 -07:00
John Benediktsson 33f741ec2e cleanup some lint warnings. 2012-04-18 17:46:01 -07:00
John Benediktsson 629677b772 vm: adding bignum_gcd primitive. 2012-04-05 09:17:35 -07:00
Doug Coleman 10387f8df9 combinators.smart: Implement reduce-outputs using compose, fix some stack effects, add using 2011-11-28 20:55:10 -08:00
Doug Coleman 664239e1ba generalizations: Refactor stack-checker so that smart combinators can be used with curry and compose. 2011-11-27 20:25:22 -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 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 8b20a70d96 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 82bdb6a65a stack-checker.known-words: add ffi-signal-handlers 2011-11-03 15:20:42 -07:00
Doug Coleman a6cbdaf48b Add stack effects for the sampling profiler 2011-11-02 17:26:13 -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
Slava Pestov 2b49393a56 stack-checker.known-words: add effects for signal-handler and leaf-signal-handler primitives, even though they can't be called directly 2011-10-29 17:15:35 -07:00
Doug Coleman 7bfbe17861 Rename c-type to lookup-c-type. Fixes #230. 2011-10-24 14:37:24 -07:00
John Benediktsson 2dbb51656d Remove unused stack effects from DEFER: declarations. 2011-10-18 14:42:17 -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 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 e7c0bada28 stack-checker: update tests
[ bi ] infer now hits the row polymorphism checker before it hits the unknown-macro-input checker because of the effect on keep. Change the test to more directly test that call fails with an unknown input.
2011-10-14 15:35:29 -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 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
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 bf4fc7797e Extraneous top-level stack-effect 2011-09-25 19:32:34 -07:00
Joe Groff 608b3c72e0 stack-checker.row-polymorphism: check stack effects correctly when a one-sided polymorphic declared effect is matched to a shallow subtype, for example, ( x -- ..a ) to ( -- ); fixes #88 2011-09-09 18:13:17 -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
Erik Charlebois 1ed2bc6231 32 and 64 bit Linux PPC support 2011-05-23 23:36:14 -04: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
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 dcb0cae92a stack-checker: add a sample output in the last example of inference-recursive-combinators article 2011-01-23 22:48:41 +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
Slava Pestov ef5731ae88 stack-checker.alien: get a bit more inlining going with callbacks, to expose another bug 2010-09-05 21:27:39 -07: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 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
Slava Pestov 82694f60af stack-checker.alien: generate a declaration for input parameter types 2010-07-30 15:50:05 -04: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
Slava Pestov 1409cd79fb stack-checker: calling 'boa' on a non-tuple would compile as a no-op rather than an error (reported by Joe Groff); clean up some other error reporting code too 2010-07-17 15:57:44 -04:00
Slava Pestov 04579f27d6 Revert guarded method inlining
This reverts commit 44a835e3fc, reversing
changes made to d45926bda0.
2010-06-24 12:35:21 -04:00
Slava Pestov af12bc1879 stack-checker.dependencies: Oops 2010-06-24 05:27:01 -04:00
Slava Pestov daa87fce66 stack-checker.dependencies: fix error thrown if depends-on-single-method parameters are no longer valid 2010-06-24 04:28:40 -04:00
Daniel Ehrenberg 44a835e3fc Merge branch 'master' of git://factorcode.org/git/factor into propagation 2010-06-23 12:17:24 -04:00
Slava Pestov 49b19890e0 stack-checker.row-polymorphism: minor cleanup 2010-06-22 22:35:55 -04:00
Daniel Ehrenberg ba7cf1f873 Fixing one of the bad bugs, in row-polymorphism 2010-06-22 17:31:21 -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
Daniel Ehrenberg 3b406f091d Merge branch 'master' of git://factorcode.org/git/factor into propagation 2010-06-22 14:47:57 -04:00
Slava Pestov ff9790aaa9 Merge branch 'master' of git://github.com/erg/factor 2010-06-22 04:13:39 -04:00
Doug Coleman 8174abe287 remove system-micros word from factor src tree 2010-06-22 01:49:11 -05:00
Joe Groff 56000b63b9 stack-checker.errors.prettyprint: refer to unbalanced-branches quotation in singular when there's only one 2010-06-18 15:36:03 -07:00