Commit Graph

183 Commits (clean-linux-x86-32)

Author SHA1 Message Date
Doug Coleman 9f213f96f6 core: Add the shuffler words but without primitives.
The nipd branch slowed bootstrap by a minute, this patch does not.

sorry about changing the fjsc line endings...
2018-06-19 22:52:58 -05:00
Doug Coleman 32710df620 core/basis: Rename tuples kernel:curry -> curried, kernel:compose -> composed.
Also rename the stack-checker curried -> curried-effect, composed -> composed-effect.
2017-06-02 17:39:20 -05:00
Björn Lindqvist 5c7627a777 stack-checker.dependencies: removing the add-depends-on-<blah> words 2016-12-03 15:50:55 +01:00
Björn Lindqvist 56079afcfb Revert "bootstrap: trying to undo changes from"
This reverts commit 7b3fb61ebd.
2016-11-13 00:22:21 +01:00
Björn Lindqvist 7b3fb61ebd bootstrap: trying to undo changes from
a915d3bdb4 (#1513)

A lot of changes that built upon those changes had to be undone too. New
boot images is required.
2016-11-12 01:54:57 +01:00
Björn Lindqvist 8d982780f5 stack-checker.*: change pop-literal stack effect to ( -- obj )
The rstate return value is never used so we can remove it
2016-08-04 20:30:58 +02:00
Björn Lindqvist 39d0177ddd bootstrap.image.primitives: attempt 2 at putting all primitives in this vocab
See ca82929ffb. This time it should work
because the USING: list is not updated!
2016-03-31 03:32:34 +02:00
John Benediktsson ca82929ffb Revert "bootstrap.image.primitives: make more primitives properties be declared here"
This reverts commit 80f30119c0.
2016-03-30 11:53:38 -07:00
Björn Lindqvist 80f30119c0 bootstrap.image.primitives: make more primitives properties be declared here
This commit merges the input/output-classes and flush/foldable
declarations from stack-checker.known-words to this vocab. This should
make adding primitives a little simpler (#1134).
2016-03-30 18:59:10 +02:00
John Benediktsson 292e95f867 stack-checker.known-words: simpler infer-ndip and infer-builder. 2016-03-26 18:37:25 -07:00
Björn Lindqvist bce3a88287 stack-checker.known-words: fix input class declaration for <string>
it should be { integer-array-capacity integer } ofcourse
2016-03-19 18:59:19 +01:00
Björn Lindqvist 6f9ff8813e compiler.*, stack-checker.known-words: adds the integer-array-capacity
This commit adds the integer-array-capacity declaration on a few
words. It should make loopy code compile faster and fix #1339
2016-03-18 20:46:41 +01:00
Jon Harper 19fadb6c96 prettyprinter, locale independant float printing 2016-03-08 07:55:25 -08:00
Björn Lindqvist a915d3bdb4 stack-checker.known-words: nicer stack-effect declaration code
I think it looks better to put the primitives in groups and declare them
that way than one big block.
2015-11-15 11:10:03 +01:00
Björn Lindqvist cee0b19324 VM: the ffi-signal-handler and ffi-leaf-signal-handler primitives are unused 2015-09-02 21:54:15 +02:00
Björn Lindqvist 59b7a50567 VM: removing the get_datastack/retainstack/callstack primitives
they can all be implemented using the
datastack/retainstack/callstack-for primitives and the less primitives
the better!
2015-08-23 18:36:30 -07:00
Doug Coleman dc71bd4caa stack-checker: old bug, float>fixnum was not foldable!! 2015-08-13 14:47:01 -07:00
Doug Coleman c21a154056 core: callstack is a builtin type and a class name. rename the *stack words that grab the current stack get-foostack to avoid the callstack builtin conflict and for better symmetry with set-foostack. 2015-08-13 10:11:59 -07:00
John Benediktsson dea7e0f50d stack-checker: too tired to figure out which using is required but not used. 2015-07-31 21:57:37 -07:00
John Benediktsson 31ecc5ef86 stack-checker: using cleanup. 2015-07-31 20:41:46 -07:00
John Benediktsson 4c2c8f133f vm: rename some primitives, and some cleanup.
* quot-compiled? => quotation-compiled?
* optimized? => word-optimized?
2015-07-15 11:13:52 -07:00
Björn Lindqvist b9b75c272b VM: let's merge (save-image) and (save-image-and-exit) into one 3
arg (save-image). it's good not to have to many similar primitives
2015-07-12 22:36:59 +02:00
Björn Lindqvist 35b04f8ec1 VM: fixes a bug with the handling of 0 bignums, and declares bignum/mod
to maybe output fixnums
2015-06-27 16:14:58 +02:00
Björn Lindqvist 2f835d3666 compiler.tree.propagation.*: implements downgrading to fixnum for the
mod word, maybe a first step in solving #224

factor_vm::primitive_bignum_mod is changed so that it outputs a fixnum
if the value is small enough. Then the compiler can take advantage of
knowing that expressions like [ >bignum 10 mod ] always result in a
fixnum [-9,9] and inline more arithmetic.
2015-06-27 16:14:58 +02:00
John Benediktsson e1d18579e7 cpu/stack-checker: fix some help-lint warnings. 2015-05-10 10:13:57 -07:00
Björn Lindqvist 0c2559ef6e compiler.*: a bunch more compiler docs 2015-05-09 20:04:22 -07:00
Björn Lindqvist f99c03d023 stack-checker.known-words: docs and tests 2015-02-05 11:01:05 +00:00
Björn Lindqvist e00798cd2a VM: new primitive free-callback which is able to free a callback
previously allocated using <callback>
2014-09-29 07:30:21 -07:00
Björn Lindqvist a338fa08e7 stack-checker.known-words: stack effect for <callback> is switched, it
should be ( word integer -- alien )
2014-09-29 07:30:21 -07:00
Björn Lindqvist 4a96e6163b VM: new primitive (callback-room) for querying the VM about memory usage
The word works exactly like (code-room) except it looks at the memory
usage in the callback heap instead of the code heap.
2014-09-29 07:30:21 -07:00
John Benediktsson 445c7f299a stack-checker.known-words: adding bignum>fixnum-strict. 2014-06-08 18:02:16 -07:00
Björn Lindqvist 4f91e9efbb Docs: more docs for stack-checker.* words 2014-06-08 11:48:30 -07:00
Björn Lindqvist 395a490b90 Docs: documentation for stack-checker.* and compiler.* vocabs 2014-06-08 11:48:30 -07:00
Doug Coleman 5a1692eead stack-checker: Rename literal -> literal-tuple. 2013-03-23 16:12:03 -07:00
John Benediktsson 909b28a360 stack-checker: adding 4dup and 4drop. 2012-10-22 12:27:15 -07:00
Doug Coleman 106e4d100e stack-checker: Add alien-assembly to the do-not-compile list. Remove a duplicate word from the do-not-call list. Reorder a bit. 2012-10-22 09:47:35 -07:00
Doug Coleman 1c3deddf61 issue #358: Rename all of the words depends-on-* to add-depends-on* 2012-06-21 08:35:45 -07:00
John Benediktsson 22c26ff3f5 vm: adding bignum_gcd primitive. 2012-04-05 09:17:35 -07: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
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
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 7619ff785b stack-checker.known-words: add ffi-signal-handlers 2011-11-03 15:20:42 -07:00
Doug Coleman 03a5293ed1 Add stack effects for the sampling profiler 2011-11-02 17:26:13 -07:00
Joe Groff eac90675c0 move counting profiler to tools.profiler.counting 2011-11-02 13:23:09 -07:00
Joe Groff 33919b2919 tools.profiler: rename to tools.counting-profiler 2011-11-02 13:23:06 -07:00
Slava Pestov c1b7de8339 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
John Benediktsson 80e1c8e3f2 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 5a072c57a6 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
John Benediktsson afc07c0e05 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 181f11faa8 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