Commit Graph

1404 Commits (f5adb971f60e8dc35b4127e04364e35686abb41e)

Author SHA1 Message Date
Doug Coleman 5f6421af5d use win32-file-attributes word 2008-11-14 00:03:24 -06:00
Slava Pestov 29249e2a64 Document furnace.json 2008-11-13 23:59:30 -06:00
Slava Pestov f78c5b4d20 Write furnace.db docs 2008-11-13 23:35:00 -06:00
Slava Pestov faeacba224 furnace.alloy docs 2008-11-13 23:21:32 -06:00
Slava Pestov b17dbcd394 Document furnace.actions and clean up a few things 2008-11-13 21:49:37 -06:00
Doug Coleman 7a58500b01 fix docs for hexdump 2008-11-13 21:06:41 -06:00
Doug Coleman 47124b8aaa finish moving hexdump to tools.hexdump 2008-11-13 19:49:34 -06:00
Doug Coleman c613eca829 move hexdump to tools.hexdump 2008-11-13 19:48:11 -06:00
Doug Coleman 89a5957033 add file-type>ch and ch>file-type 2008-11-13 19:32:34 -06:00
Slava Pestov 4e0dee6280 validators can use new regexps now 2008-11-13 18:26:09 -06:00
Slava Pestov 174f24a1f3 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-13 17:45:53 -06:00
Doug Coleman eef79c3766 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-13 16:16:35 -06:00
Doug Coleman afc071eaf8 fix docs 2008-11-13 16:15:57 -06:00
Doug Coleman 8f2d1353c0 remove -a option... 2008-11-13 16:10:43 -06:00
Doug Coleman a5c47ac294 remove debug, add -a option 2008-11-13 16:09:03 -06:00
Doug Coleman 8a25012b55 fix line numbers with etexteditor 2008-11-13 16:07:01 -06:00
Doug Coleman 069d5b1795 add etexteditor 2008-11-13 15:47:39 -06:00
Doug Coleman 6d44e383b3 add rc files to scaffold since it's hard to create a file named .foo on windows 2008-11-13 14:27:28 -06:00
Slava Pestov 1498d94a53 Move suffix arrays to basis 2008-11-13 09:34:46 -06:00
Doug Coleman c64749ccac Merge branch 'master' of git://factorcode.org/git/factor 2008-11-13 06:48:48 -06:00
Slava Pestov eef45a1cc3 Tweak PowerPC %dispatch 2008-11-13 05:58:49 -06:00
Slava Pestov a14e1ebcb5 Fix PowerPC bootstrap 2008-11-13 05:55:34 -06:00
Doug Coleman e089abd37f Merge branch 'master' of git://factorcode.org/git/factor 2008-11-13 05:42:53 -06:00
Slava Pestov 5b4e8e9d09 Rename tests/templates.factor to tests/codegen.factor since that's really what its testing 2008-11-13 04:16:58 -06:00
Slava Pestov eb05dd3a12 Optimize a ##dispatch that is applied to the result of a ##sub-imm or ##add-imm; this eliminates an instruction from the common 1 fixnum-fast { ... } dispatch and 8 fixnum-fast { ... } dispatch code sequences appearing in generic word expansions 2008-11-13 04:16:08 -06:00
Slava Pestov 029ee67525 Fix ppc make-image 2008-11-13 04:12:09 -06:00
Slava Pestov 6590c894bc Forgot a constant 2008-11-13 04:10:21 -06:00
Slava Pestov b1aa3697cb Emit branches in the same order they're written in code 2008-11-13 03:52:01 -06:00
Slava Pestov cfa82cb474 New calling convention for VM primitives:
instead of the Factor side passing the stack pointer as the first parameter, and having the VM save it to stack_chain->top, we instead have the Factor side save it. Eliminates a lot of crud in the VM
2008-11-13 03:20:34 -06:00
Slava Pestov 3723b2e640 vlists: immutable sequences with mostly-O(1) push and pop, O(n) behavior when sharing: optimized for the unshared case. also contains valists, which are assocs built on vlists with O(n) search starting from the end, and mostly-O(1) insertion that shadows prior entries. Behaves similar to Lisp/Scheme alists 2008-11-13 00:12:14 -06:00
Slava Pestov 3f4eb5a09a Add changed-nth combinator: like change-nth but for persistent sequences 2008-11-13 00:10:55 -06:00
Slava Pestov a81e737e02 Add passociate word: like associate but for persistent hashtables 2008-11-13 00:10:37 -06:00
Slava Pestov 3bb778eab4 Remove unnecessary stack-checker.transforms dependency from macros 2008-11-13 00:09:47 -06:00
Slava Pestov 5bae69426d Stack checker cleanup and optimization
- stack-checker.state vocabulary split up into stack-checker.{state,values,recursive-state}
- code that modifies and searches recursive state factored out into stack-checker.recursive-state
- recursive state is now a set of three binary hash trees instead of an alist, and no longer contains unnecessary data
- binary hash trees are in stack-checker.recursive-state.tree: unbalanced, persistent
- ~8 second speedup on bootstrap, ~20 second speedup in "peg.javascript" require
2008-11-13 00:07:45 -06:00
Doug Coleman db2f744f90 redo random-bytes* with a better algorithm 2008-11-12 22:10:34 -06:00
Slava Pestov 4a1bcacfd4 Refactoring recursive-state alist; now its a mapping from words to local state triples, reduces searching by a bit 2008-11-12 19:08:40 -06:00
Slava Pestov 8f6f666a2a Neither here nor there 2008-11-12 14:40:01 -06:00
Doug Coleman a8f1680bcd slightly faster 2008-11-12 13:28:17 -06:00
Doug Coleman b45c03877b don't generate 4x the number of random bytes we actually need. map concat is slower than push-all 2008-11-12 12:40:09 -06:00
Eduardo Cavazos 6cc08f76dd help/handbook: Fix some headings 2008-11-12 03:58:41 -06:00
Doug Coleman 44b0cf94ab better fix for emacs 2008-11-12 01:14:19 -06:00
Doug Coleman 9656ce2e65 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-12 00:40:11 -06:00
Doug Coleman 0d3a5e372a allow setting of emacsclient 2008-11-12 00:39:56 -06:00
Slava Pestov 9f52ee50b0 Another speedup to >alist: create vector with right size up-front. 10 second bootstrap time reduction 2008-11-12 00:10:50 -06:00
Slava Pestov eed1dd3d2b Fix byte vector prettyprinting 2008-11-11 23:38:19 -06:00
Slava Pestov c581311e03 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-11 23:24:08 -06:00
Slava Pestov cdb94e4c62 Word constructor was not invoking relocation on the profiled block, so words constructed while profiling was on could not be executed. This prevented profiling of PEGs 2008-11-11 23:07:40 -06:00
Slava Pestov de02724135 Make a word inline for the win 2008-11-11 23:04:30 -06:00
Slava Pestov ed3a81a503 Faster M: hashtable >alist performs less dispatch and allocates less junk 2008-11-11 23:03:50 -06:00
James Cash c97e731d44 Fixing linked-assoc docs 2008-11-11 21:25:33 -05:00
Slava Pestov fab60f94a7 Minor performance improvements 2008-11-11 19:51:26 -06:00
Slava Pestov d970a632bb Fix nodes>quot 2008-11-11 19:51:12 -06:00
Slava Pestov 26f309d2ae Trying to make PEGs compile faster by reducing the number of low level IR nodes: merge functionality of #>r and #r> into #shuffle, and generate 1 node instead of 3 for calls to get-local 2008-11-11 18:46:31 -06:00
Slava Pestov 782671a50c Merge branch 'master' of git://factorcode.org/git/factor 2008-11-11 17:43:25 -06:00
Slava Pestov 5c6860fd0f Updating linked-assocs documentation, add <linked-assoc> word 2008-11-11 17:42:52 -06:00
Slava Pestov b4683bb00b Merge branch 'master' of git://factorcode.org/git/jamesnvc 2008-11-11 17:36:34 -06:00
Doug Coleman 5490b730b5 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-11 15:37:42 -06:00
Doug Coleman fa282c5053 remove duplicate using 2008-11-11 15:37:32 -06:00
Doug Coleman 1f85b7ec14 catch errors for windows file-systems word and return a tuple with just a mount point
this happens on empty floppy disk drives
2008-11-11 15:35:17 -06:00
Doug Coleman 146340690f implement file-systems on windows 2008-11-11 15:17:35 -06:00
Doug Coleman 17916ed7f2 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-11 14:04:25 -06:00
Doug Coleman 78ab09d8bb move file-systems word to core 2008-11-11 14:04:05 -06:00
Doug Coleman c860ab78b6 removed duplicate file-system-info definition. oops 2008-11-11 13:41:34 -06:00
Doug Coleman bbaa8b95bd mounted -> file-systems 2008-11-11 13:30:12 -06:00
Doug Coleman 482933f4d3 remove duplicated slot from linux statfs 2008-11-11 13:19:53 -06:00
Doug Coleman aff4c9bda3 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-11 13:07:26 -06:00
Doug Coleman f6c0c43dd4 fix user-cache and add tests for this 2008-11-11 13:05:04 -06:00
Doug Coleman e3533daf4d make jedit behave nicely with scaffolding docs 2008-11-11 13:04:20 -06:00
Doug Coleman 51ecc18cd8 changed a bitwise word, updating usage for mersenne twister 2008-11-11 13:03:42 -06:00
Doug Coleman 7aeeb2c9ce bitwise docs, fix some bugs in bitwise words 2008-11-11 13:03:08 -06:00
Slava Pestov 8a6ecec9f3 Fix broken link in ratios docs 2008-11-11 12:11:36 -06:00
Slava Pestov a32acdcff0 Tweak grouping code for better method inlining 2008-11-11 12:11:13 -06:00
Slava Pestov d7dd084b8d Usability tweak: focus on listener input area when input presentation is clicked 2008-11-11 11:46:35 -06:00
Slava Pestov fed799a32c Fix circularity 2008-11-11 11:39:38 -06:00
Slava Pestov 4c0f2cc3f5 Move factor-2s from miller-rabin to math.functions; use it to make ^ more efficient 2008-11-11 11:30:47 -06:00
Slava Pestov f1a1a4c1cb Cloning a dlist did not clone its nodes, and so was useless 2008-11-11 10:56:58 -06:00
Slava Pestov 1d630b6cf2 Minor documentation fixes 2008-11-11 10:51:15 -06:00
Slava Pestov f04b32ea02 Remove duplicated logic 2008-11-11 09:10:33 -06:00
Slava Pestov d50f4275d4 Fix help lint 2008-11-11 08:53:11 -06:00
Slava Pestov 792df37431 Update unit test 2008-11-11 08:50:30 -06:00
Slava Pestov 5f4b247072 Propagation pass now uses a stack of hashtables for predicated constraints instead of cloning a hashtable. New strategy for recursive propagation; now converges with fewer iterations. ~15 sec bootstrap time improvement 2008-11-11 08:49:00 -06:00
Slava Pestov 7f9fbdaa4e cleanup pass didn't properly handle conditionals where both branches were dead 2008-11-11 08:38:03 -06:00
Slava Pestov 43335d9c36 Intervals now use a special singleton for the full interval to eliminate FP math in the common case; fix a bug in value-info<= 2008-11-11 08:30:14 -06:00
Slava Pestov bb44effcb3 Forgot to include this in the last patch 2008-11-11 02:35:27 -06:00
Slava Pestov d579628d61 More OpenGL rendering tweaks 2008-11-11 02:31:56 -06:00
James Cash da3399f31d More tests for linked-assocs 2008-11-11 02:33:19 -05:00
James Cash a5576bbb1d Fixing extra space, replacing tuck ... swap with [ ... ] keep 2008-11-11 02:33:19 -05:00
James Cash d9076407fb Writing docs for linked-assocs 2008-11-11 02:33:19 -05:00
James Cash 143567c917 More tests for linked-assocs 2008-11-11 02:33:19 -05:00
James Cash 41b7853e08 Adding more assoc protocol methods to linked-assocs, bugfixes 2008-11-11 02:33:18 -05:00
James Cash b3acebc350 linked-assocs passes tests 2008-11-11 02:33:18 -05:00
James Cash b68d3c94a7 Adding linked-assocs 2008-11-11 02:33:18 -05:00
Slava Pestov f0c61b9499 Rewrite OpenGL rendering code
- Don't use glPolygonMode to draw outline rectangles
- Use vertex arrays instead of glBegin/glVertex/glEnd
- Remove dead code from opengl vocabulary
- draw-interior and draw-boundary are now called with origin get [ ... ] with-translation
2008-11-11 00:28:37 -06:00
Slava Pestov eabba96627 Merge branch 'master' of git://repo.or.cz/factor/jcg 2008-11-10 21:38:28 -06:00
Eduardo Cavazos 2489ac5205 bootstrap.stage2: Factor out 'print-time' 2008-11-10 21:27:48 -06:00
Eduardo Cavazos 78d9452b7e basis/bootstrap/stage2: Show core bootstrap time in report 2008-11-10 20:05:50 -06:00
Joe Groff 6189bfd1f0 bring cairo bindings back from the dead 2008-11-10 17:01:14 -08:00
Slava Pestov 161c917748 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-10 05:08:39 -06:00
Slava Pestov d8a3439bc2 Fix indentation 2008-11-10 05:08:30 -06:00
Slava Pestov eeb53283d4 Update code for builder removal 2008-11-10 05:07:25 -06:00
Eduardo Cavazos 0b33c52886 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-10 03:36:26 -06:00
Eduardo Cavazos 17be33fb01 ui.gadgets.labelled: Simplify '<title-bar>' 2008-11-10 03:35:21 -06:00
Slava Pestov 8da65ff55c Merge branch 'master' of git://factorcode.org/git/factor 2008-11-10 03:23:19 -06:00
sheeple ffe4bd6787 Various updates 2008-11-10 03:18:58 -06:00
sheeple 067e9934e1 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-10 03:02:17 -06:00
sheeple 5b7d40d9b4 We need to end the basic block after the ##prologue in the dispatch branch so that the GC check can go after the prologue 2008-11-10 02:58:05 -06:00
Eduardo Cavazos 6df7342b81 ui.gadgets.scrollers: Nicer version of 'find-scroller*' 2008-11-10 02:10:18 -06:00
Slava Pestov 4d317e2d46 Merge branch 'master' of git://github.com/glguy/factor 2008-11-10 00:30:27 -06:00
Slava Pestov b8eebd5c2b swap over == tuck; dupd swap == over 2008-11-10 00:16:11 -06:00
U-SLAVA-DFB8FF805\Slava 2bf9a55cea Fix Windows deployment 2008-11-09 17:27:51 -06:00
U-SLAVA-DFB8FF805\Slava 429fe85f46 Fix compile error 2008-11-09 17:27:39 -06:00
Slava Pestov 28e397420d Fix USING: 2008-11-08 21:43:55 -06:00
unknown 7a6a280b5c Fix conflict 2008-11-08 21:41:33 -06:00
unknown f7fe84e563 Working on Win64 FFI 2008-11-08 21:40:47 -06:00
Slava Pestov f53e9c654c Merge branch 'master' of git://factorcode.org/git/factor 2008-11-08 20:36:29 -06:00
Slava Pestov 65dea0aa26 PowerPC backend fixes 2008-11-08 20:36:14 -06:00
Slava Pestov 57242951b9 Better error reporting in FROM: and RENAME: words 2008-11-08 19:33:15 -06:00
Eduardo Cavazos 8262b50c87 ui.gadgets.scrollers: minor tweak in 'new-scroller' 2008-11-08 16:23:06 -06:00
Eduardo Cavazos 8e44e783cf ui.gadgets.lists: minor tweak to 'select-gadget' 2008-11-08 15:59:21 -06:00
Peter Burns a4cecaaf40 swap drop === nip 2008-11-08 13:45:45 -08:00
Peter Burns 64cdabf57a A bit more refactoring and testing of json.reader 2008-11-08 12:08:58 -08:00
Slava Pestov 9cc193ea5b Add unportable tags and fix my-arch word 2008-11-07 22:37:40 -06:00
Peter Burns bca998bba5 Merge branch 'master' of git://factorcode.org/git/factor into json 2008-11-07 20:00:42 -08:00
Peter Burns 706da24b8c Refactored json.reader, added a couple more unit tests, no more rationals 2008-11-07 20:00:19 -08:00
Slava Pestov eb83b542d6 Fix unix x86.64 bootstrap 2008-11-07 21:54:13 -06:00
Slava Pestov 000affca5a Merge branch 'master' of git://factorcode.org/git/factor 2008-11-07 21:09:45 -06:00
Slava Pestov 1b744ab14b Updating code for boot image renaming 2008-11-07 21:09:42 -06:00
unknown de0cc7f99a Merge branch 'master' of git://factorcode.org/git/factor 2008-11-07 20:49:42 -06:00
Slava Pestov 639da2d335 Refactor OS-specific parts of PowerPC backend 2008-11-07 20:45:25 -06:00
unknown cc7ab11881 Add more unit tests 2008-11-07 20:34:04 -06:00
unknown 7365959f01 Starting work on Win64 port 2008-11-07 20:33:32 -06:00
Peter Burns 6e22f39f46 Rewrote json.reader to use peg.ebnf 2008-11-06 21:45:24 -08:00
sheeple 070432d140 Merge branch 'master' of git://factorcode.org/git/factor 2008-11-06 19:15:13 -06:00
sheeple d1f248dac6 Fixing PowerPC backend: prolog register clobberage, spilling, and general stack frame usage. Add some lame tests for spilling 2008-11-06 19:00:56 -06:00
Doug Coleman a7595665fc Merge branch 'master' of git://factorcode.org/git/factor 2008-11-06 16:54:05 -06:00
Doug Coleman 46aa56730b better parsing for anchors 2008-11-06 16:53:00 -06:00
Slava Pestov b7dc7296db Implement stream-read on memory-streams. This allows alien>string to work with utf16 encoding 2008-11-06 13:42:53 -06:00
Doug Coleman dd1b28ba7a Merge branch 'master' of git://factorcode.org/git/factor 2008-11-06 13:17:54 -06:00
Doug Coleman 811026ce4d removing some uses of at* in favor of at, simplifying code 2008-11-06 13:16:33 -06:00
Slava Pestov 63a9975a0e Support inline, foldable, flushable on methods; add declarations in a couple of places for ricing purposes 2008-11-06 13:13:37 -06:00
Slava Pestov 751426f283 Remove dead code from math.intervals; we no longer need the operations to support f anymore 2008-11-06 11:57:31 -06:00
Slava Pestov 4e55cd973b If a #dispatch branch is a call to another word which is not an intrinsic, we avoid generating the dispatch branch and just jump to the word directly 2008-11-06 11:48:55 -06:00
Slava Pestov 9366ad650d Add unportable tag 2008-11-06 09:29:21 -06:00
Slava Pestov 64cbf619a9 Add more algebraic simplifications: comparison of a comparison, comparison where first is immediate 2008-11-06 09:27:52 -06:00
Slava Pestov 1c1333fbe9 Compile not and >boolean as branchless intrinsics by having the CFG builder detect certain code patterns 2008-11-06 09:09:21 -06:00
Peter Burns e631e1ca08 Normalized spacing to 4 space tabs in json modules 2008-11-06 04:41:53 -08:00
Peter Burns 986ea40835 Changed json-null to a SINGLETON for method dispatch 2008-11-06 04:38:12 -08:00
sheeple d2ec46e38f PowerPC backend almost functional; some new compiler unit tests added,
better compilation of 'f eq?'; f becomes an immediate operand
move aux-offset to compiler.constants
2008-11-06 06:27:27 -06:00
Peter Burns 260862603c Added some tests for json.writer, fixed a bug with t >json and json-null >json 2008-11-06 04:26:49 -08:00
Slava Pestov 7741096bff Tweak PPC register usage; gcc doesn't like it when you mess with r31 for some reason 2008-11-06 03:36:46 -06:00