Add more unit-tests and docs for math.bitwise. Fix a bug with >signed so that it truncates a number to however many bits you tell it the number is before doing the calculation.
Joe Groff [Mon, 19 Sep 2011 02:00:30 +0000 (19:00 -0700)]
slots: pre-create the "at", "nth", and "global" slots to make deterministic the currently nondeterministic ambiguity between accessors:change-* and assocs:change-at, sequences:change-nth, and namespaces:change-global
Revert "spread>quot now outputs empty quotations where you would expect so that things like { [ ] [ ] } spread infer as ( x x -- x x ) instead of ( -- )"
spread>quot now outputs empty quotations where you would expect so that things like { [ ] [ ] } spread infer as ( x x -- x x ) instead of ( -- )
Fixes #139
Remove Windows CE from core/ basis/ and build-support/
Rename the winnt singleton to windows in core/ basis/ extra/
Rename boot images winnt -> windows
Fixes #84.
Graphviz's gvc.dll doesn't export gvplugin_list() on Windows, so call gvPluginList() instead. This bug has been reported to the Windows Graphviz maintainer, so we can potentially go back to calling gvplugin_list() someday.
Joe Groff [Thu, 15 Sep 2011 21:40:37 +0000 (14:40 -0700)]
help.markup: change related-words to notify definition observers for the affected words and to update the relations of formerly-related words; fixes #28
Joe Groff [Thu, 15 Sep 2011 22:05:17 +0000 (15:05 -0700)]
ui.tools.deploy: change "Deploy as Windows console application" to read "Deploy as console application on Windows"; makes it a bit clearer that the switch only affects Windows deployment
Joe Groff [Thu, 15 Sep 2011 18:27:16 +0000 (11:27 -0700)]
ui.backend: refactor the UI `main-vocab-hook` to use a backend-specific `ui-backend-available?` word, so that loading other backends doesn't change the `main-vocab-hook` out of sync with the backend; fixes #131
Joe Groff [Tue, 13 Sep 2011 20:17:42 +0000 (13:17 -0700)]
bootstrap.compiler: move GetLastError/FormatMessageW compilation before any other foreign words; add a similar shortlist for dlerror on unix as a safeguard
Joe Groff [Tue, 13 Sep 2011 06:06:08 +0000 (23:06 -0700)]
alien.libraries, compiler.cfg.builder.alien: if `dlopen` fails during `<library>`, call `dlerror` and store the error message in the library object; put the dlerror message in the linkage-error when a word from the library is compiled
Some mason improvements:
- Rename config variables to be more intuitive, split up upload-to-factorcode? into several variables
- Add target-variant variable. This allows running multiple masons on the same architecture but with different parameters, for example bootstrapping with SSE disabled, or simply for testing on a different OS release.
- Added a boot-flags variable for use with the above
Make sure 0 read always returns f. Fixes issue #70.
More unit tests, fix read-until to return f f sometimes
Rename ((read-until)) to read-until-loop. Fix the stack effect declarations of (read) and handle-readln.
Joe Groff [Sat, 10 Sep 2011 01:08:27 +0000 (18:08 -0700)]
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
Joe Groff [Fri, 9 Sep 2011 02:07:14 +0000 (19:07 -0700)]
math.statistics: add higher-order stack effect annotations to sequence>* words; factor out a "histogram-by" word from "histogram" that takes an additional binning quotation
Add os-version hook to system-info which returns f on every platform except windows, where it returns { 5 1 } for xp and { 6 1 } for win7. Eventually do more here, like identify Snow Leopard, Lion, etc, but it's good enough to make ping tests pass.
Move system-info platform loader into system-info.backend
Add win7? and winxp? words to system-info, clean up ping-tests with new word
Merge system-info.backend into system-info. Will throw an exception when loading on *bsd now
parser.notes sets parser-quiet? to t in the global namespace. stage2.factor runs its code in the global namespace, so 1) make it more clear that we're setting the global parser-quiet? and 2) change it back before finishing bootstrap to match parser.notes top-level form