Slava Pestov
11be5a4bd5
Rename update to assoc-union!, add assoc-filter! assoc-diff! words
2010-02-04 02:55:00 +13:00
Slava Pestov
8d3c11c176
compiler: remove some unnecessary complexity
2010-02-04 01:36:52 +13:00
Slava Pestov
c011380a19
compiler: tweak recompilation logic. speeds up '"terrain" require' by 8 seconds
2010-02-04 01:09:57 +13:00
Slava Pestov
22fbe01c17
Compiled code size optimizations for x86-64 resulting in development image size reduction of about 350kb
...
- RIP-relative LEA is now used to load program counter in prolog and tail calls; saves 3 bytes of code and 4 bytes of relocation information over an immediate MOV
- VM field accesses no longer involve a redundant addition
2010-02-03 23:11:35 +13:00
Slava Pestov
eed0b27d5d
tools.memory: display some more code heap stats
2010-02-03 23:11:34 +13:00
Slava Pestov
87665c8f40
math.statistics: rename histogram* to histogram! and rename sequence>assoc* to sequence>assoc!
2010-02-03 23:11:33 +13:00
Slava Pestov
662eba7a67
compiler.tree.propagation.call-effect: hack so that call( doesn't clear the last error
2010-02-03 23:11:33 +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
03c5293e68
binary-search: improve docs
2010-02-03 23:11:32 +13:00
Slava Pestov
f8828aef8d
strings.tables: fix a logic error
2010-02-03 23:11:31 +13:00
Slava Pestov
0b278adb5a
Test fixes
2010-02-03 23:11:31 +13:00
Slava Pestov
7846074b3b
db: update for ERROR: change
2010-02-03 23:11:31 +13:00
Slava Pestov
0438e4983b
macros: handle compile-time stack effect check of macro body more elegantly than previous attempt
2010-02-03 23:11:31 +13:00
Slava Pestov
7e64810a00
tuple-arrays: cleanup
2010-02-03 23:11:30 +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
3e8d21b493
Clarify documentation for compilation units and 'undefined' error
2010-02-03 23:11:28 +13:00
Slava Pestov
cde6a2c5f7
prettyprint: make callstack output needlessly fancier
2010-02-03 23:11:26 +13:00
Slava Pestov
31cf64eb84
listener: add tools.walker to default interactive vocab path
2010-02-03 23:11:26 +13:00
Slava Pestov
55a89ec9c2
Better error message for call( when quotation has the wrong effect
2010-02-03 23:11:25 +13:00
Slava Pestov
df55fed478
generic: rename method-body predicate class to method
2010-02-03 23:11:24 +13:00
Slava Pestov
fbf078d4b3
words: undefined error now contains the word in question
2010-02-03 23:11:23 +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
Slava Pestov
e32d5fd0ac
Minor updates to string documentation
2010-02-03 23:07:53 +13:00
Slava Pestov
ed9251c56c
Merge branch 'master' of git://github.com/littledan/Factor
2010-02-03 22:58:25 +13:00
Slava Pestov
080609c281
Minor doc fixes
2010-02-03 22:56:32 +13:00
Brad Christensen
7381d47103
More documentation cleanup.
2010-02-03 00:05:04 -07:00
Brad Christensen
9b9322ea1e
A number of documentation fixes and cleanup.
2010-02-03 00:05:03 -07:00
Slava Pestov
c6bc1d702e
Merge branch 'master' of git://github.com/erikcharlebois/factor
2010-02-02 04:04:29 -06:00
Slava Pestov
bf05a901c4
Fix ffi-test library to work with Windows SDK. Turns out MINGW has a different ABI for struct returns than MS's compiler; make the MS ABI the default for cdecl on Windows, and add mingw ABI for libraries that use the MINGW ABI
2010-02-02 04:01:12 -06:00
Joe Groff
8cf05e9909
vector-friendlier math.quaternions
2010-02-02 00:30:21 -08:00
Joe Groff
1ee05e38fb
missed an alien.fortran test
2010-02-02 00:13:13 -08:00
Daniel Ehrenberg
8d0705805b
Updating docs to say Unicode 5.2
2010-02-02 01:49:24 -06:00
Daniel Ehrenberg
6cc2d0f1d7
Updating Unicode to version 5.2
2010-02-02 01:38:17 -06:00
erikc
e82aca026c
Merge branch 'master' of git://github.com/slavapestov/factor
2010-02-01 22:13:05 -08:00
erikc
03966e4fb2
Move collada viewer to extra/model-viewer
2010-02-01 22:12:22 -08:00
Joe Groff
f1bbeec198
wrap alien.fortran c-type conversion tests in with-manifest
2010-02-01 22:03:51 -08:00
erikc
e1223e056f
Unify obj and collada loading under a common models umbrella loader
2010-02-01 18:44:09 -08:00
Joe Groff
9adfda095f
alien.fortran: convert fortran types to word c-types
2010-02-01 12:06:10 -08:00
Slava Pestov
2022c2a83e
io.launcher.windows: include launch descriptor in error thrown when launching a process fails
2010-02-01 12:39:29 -06:00
Slava Pestov
e7de95e72b
compiler.crossref: clean up and fix bug with forgotten classes
2010-02-01 17:20:08 +13:00
Slava Pestov
823e2fd3e9
tools.test: run-test-file is public now, fix no-method error if unit test forgets a vocab
2010-02-01 17:09:57 +13:00
erikc
98a71d3521
Merge branch 'master' of git://github.com/slavapestov/factor
2010-01-31 16:57:12 -08:00
erikc
676673fc7e
Factored collada implementation a bit more and fixed some bugs
2010-01-31 16:56:26 -08:00
Doug Coleman
fa042f6578
Make sure we're not reading 0 bits in the lzw decompression loop -- this causes a hang
2010-01-31 16:29:20 -06:00
Doug Coleman
c6b37f4da4
Rewrite mnapply to be a combinator instead of a macro. Write nspread* to implement mnapply
2010-01-31 14:48:01 -06:00
Doug Coleman
4a7845e52c
Add [1,b) to math.ranges. Use [1,b] in random.sfmt
2010-01-31 14:48:01 -06:00
Doug Coleman
28adde8542
Fix using
2010-01-31 14:48:01 -06:00
Doug Coleman
f15ec31559
Better implementation of sample, fix docs formatting
2010-01-31 14:48:01 -06:00
Slava Pestov
0d939f731a
tools.deploy.shaker: fix load error
2010-02-01 06:02:09 +13:00
Slava Pestov
e929d906ce
classes: If a tuple class with subclasses is redefined into something that's not a tuple class, subclasses are changed to inherit from 'tuple' instead of being forgotten. Also, changing the metaclass of a union or intersection member no longer removes it from the union or intersection. Finally, make some internal words private
2010-02-01 02:48:39 +13:00
Slava Pestov
3addfcc2ad
classes: more robust code for detecting circular inheritance, move it out of classes.tuple since predicate classes need the same check too
2010-02-01 00:08:18 +13:00
Slava Pestov
8432f4c459
Fix a couple of unit tests that were relying on the old compiler crossref structures
2010-01-31 23:26:55 +13:00
Slava Pestov
d762c8bfb3
Merge branch 'master' of git://github.com/erikcharlebois/factor
2010-01-31 18:29:15 +13:00
Slava Pestov
c5c94ef1f9
compiler.cfg.intrinsics.simd: ignore dummy assert-positive word
2010-01-31 18:19:14 +13:00
erikc
0770b940b0
Merge up
2010-01-30 20:48:06 -08:00
erikc
f4865e0f9a
FFI bindings for Win32 RawInput
2010-01-30 20:40:41 -08:00
erikc
cfcd983bb4
Temporary xinput backend for game.input
2010-01-30 20:40:16 -08:00
erikc
f33c73bf94
Merge up
2010-01-30 20:39:43 -08:00
Erik Charlebois
e28c23c860
Refactored collada loader significantly
2010-01-30 19:48:10 -08:00
Slava Pestov
5ed0bc72aa
Merge git://github.com/littledan/Factor into littledan
2010-01-31 02:54:58 +13:00
Slava Pestov
03d2b77faa
tools.deploy.shaker: update for new crossref word props
2010-01-31 02:50:55 +13:00
Slava Pestov
2c63161c84
stack-checker.dependencies: make conditional dependencies more robust
2010-01-31 01:55:35 +13:00
Slava Pestov
9bc4e662c6
compiler.crossref: word props were stored the wrong way round
2010-01-30 22:33:27 +13:00
Slava Pestov
22e3b71ae2
grouping: tweak inheritance to make method precedence explicit
2010-01-30 21:14:41 +13:00
Slava Pestov
6eceff6acb
compiler.crossref: cleanup
2010-01-30 21:14:40 +13:00
Joe Groff
54e0221de5
images: extend pixel-at/set-pixel-at with versions that select/replace rows of pixels
2010-01-29 16:30:34 -08:00
Erik Charlebois
1c8b4f08a4
Merge branch 'master' of git://github.com/slavapestov/factor
2010-01-29 15:57:31 -08:00
erikc
e44973e2c7
Working collada viewer, temporary vocab
2010-01-29 15:48:50 -08:00
Slava Pestov
36618bc46e
typed: update for dependency changes
2010-01-30 10:53:42 +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
015a9d365d
compiler.crossref: memoize dependency evaluation
2010-01-30 09:29:01 +13:00
Slava Pestov
c438e84bd0
compiler.crossref: add next-method dependency
2010-01-30 09:29:01 +13:00
Slava Pestov
a13c2fb856
compiler.crosssref: rename word property
2010-01-30 09:29:00 +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
ab428fc259
Code cleanups
2010-01-30 09:28:56 +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
Slava Pestov
bd479db2f8
Fix regression when forgetting classes
2010-01-30 09:28:55 +13:00
Slava Pestov
238ec94e06
tools.deploy.shaker: don't strip "mixin" word prop
2010-01-30 09:28:54 +13:00
Slava Pestov
830e25c70b
More changes so that mixins trigger even less recompilation
2010-01-30 09:28:53 +13:00
Slava Pestov
d58f73453f
Add test case for mixin bug Doug found, seems to be fixed now
2010-01-30 09:28:52 +13:00
Slava Pestov
af41dc6169
Trying to fix mixin semantics
2010-01-30 09:28:51 +13:00
Doug Coleman
d3db7e0225
Add mnapply, smart-apply. Docs incoming soon
2010-01-29 13:47:06 -06:00
Doug Coleman
1f76ab2d45
try-find is just attempt-all. oops
2010-01-28 23:28:11 -06:00
Doug Coleman
9a8bd26786
Remove an iota from images.jpeg
2010-01-28 23:13:28 -06:00
Doug Coleman
4edc37b70c
clean up random.windows init hook, and add another crypto provider
2010-01-28 22:45:19 -06:00
erikc
ef20b40093
Merge branch 'master' of git://github.com/slavapestov/factor
2010-01-28 14:14:33 -08:00
Slava Pestov
6cdf4de4eb
Fix and clean up stage1 bootstrap
2010-01-28 17:30:35 +13:00
Slava Pestov
ce60f3c6b6
vocabs.prettyprint: fix error when printing auto-use
2010-01-28 16:46:24 +13:00
erikc
a0e3f01a88
Merge branch 'master' of git://github.com/slavapestov/factor
2010-01-27 15:31:23 -08:00
Slava Pestov
0fa425b03a
combinators.smart: smart-if was declared inline, and had no unit tests, and so was broken. This was not caught until inline macros became a parse error. Add unit tests for it
2010-01-27 22:23:04 +13:00
Slava Pestov
ca19d44350
Throw a nice error at parse time if an attempt is made to declare a GENERIC: or MACRO: word inline. Such words cannot be inlined, and doing this before previously result in confusing error messages
2010-01-27 21:00:10 +13:00
Slava Pestov
3237e48b2d
vocabs.parser: The manifest is now a definition observer, and updates itself when compilation units complete. This helps keep listener's search path up to date if vocabularies and words are renamed, defined, and undefined
...
- This makes forget-vocab more reliable in the listener
- It also fixes the problem of listener sessions where QUALIFIED: was used referring to outdated words if the vocabulary in question was reloaded
2010-01-27 20:49:26 +13:00
Slava Pestov
7fe96f3eff
math.ranges: doesn't need an equal? method, since sequence doesn't define one, and default tuple equal? is fine for ranges
2010-01-27 19:28:45 +13:00
Daniel Ehrenberg
19d551a544
Merge branch 'master' of git://factorcode.org/git/factor
2010-01-26 14:14:05 -06:00
Daniel Ehrenberg
52f2ac2bb9
Tests for propagation additions; making fixnum-bit? inline
2010-01-25 20:15:17 -06:00
erikc
66aaebe08d
Targa image file loading and saving for RGB and ARGB uncompressed images
2010-01-25 16:38:04 -08:00
Slava Pestov
6306d58f77
help.crossref, tools.crossref: improved help cross-referencing
2010-01-26 01:18:10 +13:00
Slava Pestov
13e2de5cae
help.lint: flush
2010-01-26 01:01:27 +13:00
Slava Pestov
cb9261d975
grouping: add a unit test
2010-01-26 01:01:22 +13:00
Slava Pestov
de3168ad71
Various documentation improvements
2010-01-26 01:01:12 +13:00
Slava Pestov
d4435ed32a
command-line: if -e= is passed, don't run main vocab after evaluation ends
2010-01-25 21:05:42 +13:00
Slava Pestov
aadf2873d1
ui.gadgets: make fast-children-on more flexible and take a quotation instead of always calling loc>> on elements of the children array. This enables a bug fix for M\ grid children-on, discovered from UI mis-rendering of '\ blend-mode help'
2010-01-25 21:05:42 +13:00
Joe Groff
14de77d435
inline specialized-vector byte-length
2010-01-24 20:16:10 -08:00
Slava Pestov
942f6e0943
Update Win64 support
2010-01-25 15:39:34 +13:00
Doug Coleman
af96673458
Better fix for ipv6
2010-01-24 15:57:06 -06:00
Doug Coleman
ef5baa5b67
Handle IPv6 addresses of the form ::127.0.0.1
2010-01-24 15:40:34 -06:00
Joe Groff
230630c78a
Merge branch 'master' of git://factorcode.org/git/factor
2010-01-24 12:48:17 -08:00
Joe Groff
6ec4f4ef8b
more fussing over locals docs grammar
2010-01-24 10:05:56 -08:00
Doug Coleman
c50682c6f0
make unix.utilities unportable
2010-01-23 10:12:25 -06:00
Doug Coleman
1a5768030b
Make unix.debugger unportable
2010-01-23 10:03:02 -06:00
Doug Coleman
7c40fc1a36
unix-system-call io-error -> unix-system-call drop
...
make unix.ffi, unix.ffi.linux unportable
fix spacing in io.cpp before refactoring
2010-01-23 09:07:35 -06:00
Joe Groff
7d0c67adf0
remove redundant text from docs for locals docs
2010-01-22 18:40:00 -08:00
Doug Coleman
2bf53dde61
Fix netbsd load error
2010-01-22 17:10:32 -06:00
Joe Groff
f0f3252113
unicode.case: rename title-word to capitalize and make it public
2010-01-22 15:06:04 -08:00
Doug Coleman
4857c737d3
Fix getgrent call in unix.groups
2010-01-22 16:55:05 -06:00
Doug Coleman
afdb7f6329
remove a stray character
2010-01-22 15:07:01 -06:00
Doug Coleman
760746e2ff
Fix using
2010-01-22 15:01:38 -06:00
Doug Coleman
8c1d202b4c
Rename accumulator to collector, pusher to selector
2010-01-22 15:00:53 -06:00
Doug Coleman
f144a36ad0
Move netbsd.structs into netbsd
2010-01-22 14:49:32 -06:00
Doug Coleman
bbff91e0ed
Fix load error
2010-01-22 14:45:15 -06:00
Doug Coleman
f7ee9223ae
Fix using
2010-01-22 13:24:50 -06:00
Doug Coleman
3c09c7052c
Fix using
2010-01-22 12:59:33 -06:00
Doug Coleman
b7b84fc5b7
fix using
2010-01-22 12:59:27 -06:00
Doug Coleman
8d952277a2
Handle EINTR in a lot of cases where it wasn't handled before. Split off unix into unix.ffi and unix.
2010-01-22 12:59:24 -06: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
Doug Coleman
07fcb43a06
Make unix-system-call retry the call immediately upon hitting EINTR. Use unix-system-call wherever EAGAIN or EINPROGRESS are not handled. Handle EINTR if connect returns it.
2010-01-22 12:59:17 -06:00
Slava Pestov
790c7afeaf
io.launcher: since process timeouts only kick in when wait-for-process is called, try-output-process would hang indefinitely. Fix this by splitting up wait-for-process and wrapping stream-contents in a with-timeout
2010-01-22 12:20:37 -06:00
Slava Pestov
098ef42202
compiler: fix docs
2010-01-23 00:46:04 +13:00
Slava Pestov
ea5e168d77
compiler.test: fix
2010-01-23 00:40:56 +13:00
Slava Pestov
f804c9c422
Move compile-call and related words only meant to be used for debugging to compiler.test
2010-01-23 00:39:56 +13:00
Slava Pestov
892522f8bd
alien.c-types: ensure that long and ulong types are defined with define-primitive-type and not typedef
2010-01-23 00:15:08 +13:00
Slava Pestov
638fbb13b0
alien.c-types: clean up and fix for win64
2010-01-22 23:14:20 +13:00
erikc
d63c2fefc9
Fix missing vocab USINGs and mispelled d2dbasetypes
2010-01-21 23:33:37 -08:00
erikc
407399b86a
Add iota call in game.input.dinput fill-mouse-state.
2010-01-21 18:39:23 -08:00
Doug Coleman
97668156d9
NetBSD 64 blas abi changed
2010-01-21 05:02:39 -06:00
Slava Pestov
e68996c511
game.input.dinput: fix load error
2010-01-20 07:02:48 -06:00
Slava Pestov
5279845ee0
tools.deploy.shaker: also include tools.errors if user requests debugger to be part of image. This ensures useful printouts of parse errors
2010-01-20 07:01:29 -06:00
Daniel Ehrenberg
d3590ea210
Merge branch 'master' of git://factorcode.org/git/factor
...
Conflicts:
basis/compiler/tree/propagation/transforms/transforms.factor
2010-01-20 00:15:55 -06:00
Daniel Ehrenberg
aa1651032d
Adding compiler transforms in propagation
2010-01-20 00:10:49 -06:00
Slava Pestov
21c07397d2
Merge branch 'master' of git://github.com/erikcharlebois/factor
2010-01-20 18:10:25 +13:00
erikc
281103ec7e
Move windows.dinput to windows.directx.dinput.
2010-01-19 21:08:28 -08:00
Slava Pestov
9d41492aa0
windows.psapi: add unportable tag
2010-01-20 18:02:10 +13:00
Slava Pestov
8b366c108f
Merge branch 'master' of git://github.com/erikcharlebois/factor
2010-01-20 17:51:40 +13:00