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
Daniel Ehrenberg
ece6c578d9
Fixing infinite loop in loading benchmark.fib4
2010-06-15 13:53:40 -04:00
Daniel Ehrenberg
f34630252d
Merge branch 'master' into propagation
2010-06-15 13:26:01 -04:00
Slava Pestov
04973f4d97
stack-checker.alien: callback and assembly quotations can be callables
2010-05-19 00:31:46 -04:00
Slava Pestov
50b43806e8
alien.libraries, stack-checker.alien: check user inputs more carefully to ensure that invalid ABI descriptors don't slip through and break random stuff (reported by prunedtree)
2010-05-18 18:46:31 -04:00
Slava Pestov
35bd2bca06
FFI rewrite part 5: return value boxing and callback parameter boxing now uses vregs; simplify return value unboxing
2010-05-16 03:43:23 -04:00
Daniel Ehrenberg
476ef2d3ef
Inlining no-method when a generic word has no method
2010-05-14 20:28:09 -05:00
Daniel Ehrenberg
056951fd0c
Merge branch 'master' of git://factorcode.org/git/factor into propagation
...
Conflicts:
basis/compiler/tree/propagation/propagation-tests.factor
2010-05-14 18:59:39 -05:00
Slava Pestov
5e290d5648
Refactor x86-32 stack cleanup logic
2010-05-12 02:09:11 -04:00
Slava Pestov
af4e851392
FFI rewrite part 2: use ##peek and ##replace instructions to access stack
2010-05-09 23:26:43 -04:00
Daniel Ehrenberg
786752bcef
Fixing bug in dependency tracking for guarded method inlining
2010-05-04 16:47:00 -05:00
Daniel Ehrenberg
83feb6a758
Adding dependency checking and proper handing of dispatch# to the new method inlining
2010-05-04 16:46:38 -05: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
Doug Coleman
c78628fbe9
Add callstack-bounds primitive to vm/ for use with javascriptcore library
2010-04-19 20:08:15 -05:00
Daniel Ehrenberg
d9878f81d7
Changing require-when usages to the new syntax for require-when
2010-04-18 14:29:24 -05: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
c840579540
stack-checker: calling 'dispatch' with unbalanced branches generated an error message that erroneously talked about 'if'
2010-04-13 05:24:49 -07:00