Commit Graph

1657 Commits (5df0a0073f74a02c90d22b69b0b2f1a624fcb13d)

Author SHA1 Message Date
Slava Pestov d62a6c4b09 Minor core cleanup 2008-11-18 22:08:02 -06:00
Slava Pestov a9a28a3231 Trying to blindly fix Win64 unit tests 2008-11-17 20:28:52 -06:00
Slava Pestov f29300c6ba Better error message when vocab top level forms leave crap on the stack 2008-11-16 19:47:52 -06:00
Slava Pestov 251f9213c3 Fix typo 2008-11-16 19:19:53 -06:00
Slava Pestov fbe29ceca8 format-table should not be private since ui.gadgets.grids uses it 2008-11-16 15:31:17 -06:00
Slava Pestov e6218fdc71 Move words from compiler.errors.private to compiler.errors 2008-11-16 13:46:21 -06:00
Slava Pestov acc1dc23fa More usages of $quotation 2008-11-16 09:08:38 -06:00
Slava Pestov 9bf63b1613 New $quotation markup element 2008-11-16 09:03:30 -06:00
Slava Pestov 93e9e34175 Add $maybe markup element 2008-11-16 06:02:13 -06:00
Slava Pestov 99fd539b01 Rename io.streams.string:null to null-encoding 2008-11-16 05:59:38 -06:00
Slava Pestov ff95802c46 Change tags a bit 2008-11-14 20:17:27 -06:00
Slava Pestov dffbb120a3 SLOT: now defines the accessor words instead of just deferring them 2008-11-14 00:39:28 -06:00
Slava Pestov 4858a2ea74 Simplify inline? now that generic words can't be inline anymore 2008-11-13 09:33:18 -06:00
Slava Pestov ef6206d4bb Try to optimize generic dispatch to speed up + on fixnums, nth on arrays for example 2008-11-13 03:51:04 -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 57cf756c0e Use eq? instead of number= in a few places 2008-11-11 23:04:15 -06:00
Slava Pestov ed3a81a503 Faster M: hashtable >alist performs less dispatch and allocates less junk 2008-11-11 23:03:50 -06:00
Doug Coleman 0edfc83d50 document file-systems 2008-11-11 15:41:27 -06:00
Doug Coleman 78ab09d8bb move file-systems word to core 2008-11-11 14:04:05 -06:00
Slava Pestov a32acdcff0 Tweak grouping code for better method inlining 2008-11-11 12:11:13 -06:00
Slava Pestov 1d630b6cf2 Minor documentation fixes 2008-11-11 10:51:15 -06:00
Slava Pestov e49ee006d1 Fix loop combinator docs 2008-11-11 08:50:48 -06:00
Slava Pestov 33a082c361 Fix reference to obsolete G: word 2008-11-10 02:43:16 -06:00
Slava Pestov 57242951b9 Better error reporting in FROM: and RENAME: words 2008-11-08 19:33:15 -06:00
unknown 78eeaddcf2 Add winnt-x86.64 boot image name 2008-11-07 20:34:26 -06:00
unknown cc7ab11881 Add more unit tests 2008-11-07 20:34:04 -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 d2b2cda596 Sort methods by tag, this speeds up >fixnum in the common case where the input is a fixnum 2008-11-06 10:44:06 -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
Slava Pestov a95bb533b5 Remove more redundant branches from tuple type predicates and generic words with methods on tuple classes 2008-11-06 09:08:17 -06:00
Slava Pestov 9160e667a7 Fix tuple>array and tuple reshaping 2008-11-06 01:10:56 -06:00
Slava Pestov bfd119e3b5 I/O ricing: various hints added so that UTF8 and ASCII fastpaths compile with less dispatch. 25% improvement on reverse-complement 2008-11-06 00:02:44 -06:00
Slava Pestov aac256324f lo-tag-dispatch-engine now sorts tags, this ensures that >fixnum compiles more efficiently 2008-11-06 00:02:10 -06:00
Slava Pestov cc879fa9b7 Tuple layouts are now arrays, instead of built-in types. The superclass
array is now part of the tuple layout object itself, and class hashcodes
are stored alongside class words there. This removes 2 indirections when
reading a superclass, and 3 when reading a superclass hashcode.
2008-11-05 22:20:29 -06:00
Slava Pestov 4e98751ce0 Remove a conditional branch from all tuple dispatches, since we don't have to check if the class height is at least 1; and remove memory accesses from tuple dispatch where all tuples are height 1 2008-11-05 20:23:38 -06:00
Slava Pestov 4fd1767768 Old fix for classes-intersect? no-method bug was incorrect; we were
ignoring anonymous classes in compiled-generic-crossref. Also,
forget* now calls reset-word so that references to predicates of
forgotten classes don't break the compiler with a similar error.
2008-11-05 18:32:02 -06:00
Slava Pestov fb64c1cb45 Fix class<=; a predicate class derived from a union was not reported as being contained in the union 2008-11-04 04:59:54 -06:00
Slava Pestov cc94894441 Fix notorious classes-intersect? bug, or at least one manifestation thereof. Turns out that we may temporarily end up with forgotten classes in the compiled-generic-crossref table. This is not a problem, since subsequently the words that reference forgotten classes will presumably be redefined and recompiled, but it does mean that (compiled-generic-usage) does need to handle this case 2008-11-04 03:38:44 -06:00
Slava Pestov 9b492b55e0 Fix minor leak: class-caches were not reset if a class was forgotten 2008-11-04 02:17:37 -06:00
Slava Pestov 7134fad54c Add more unit tests highlighting the problem: predicate -vs- union comparison is broken 2008-11-04 02:17:22 -06:00
Slava Pestov b4d3473d5e Tuple parsing didn't handle line breaks properly; if scan returns f, must throw unexpected-eof 2008-11-03 21:01:50 -06:00
Slava Pestov dc85ed3d56 Fix help lint: links to obsolete article 2008-11-03 08:08:28 -06:00
Slava Pestov cdb5c30bd3 Only build a generic word once, even if a compilation unit defines several methods on it, by adding generics to a set and building them at the end. 25% improvement on bootstrap time 2008-11-03 03:51:28 -06:00
Slava Pestov 44a2499c17 fixnum-shift-fast and fixnum-mod subprimitives 2008-11-03 01:18:35 -06:00
Slava Pestov 998637109a Merge branch 'master' into new_codegen 2008-11-02 03:10:40 -06:00
Slava Pestov 673fda2281 Fix bogus error message 2008-11-02 03:10:27 -06:00
Slava Pestov b5c3c19ebe Merge branch 'master' of git://factorcode.org/git/factor into new_codegen 2008-11-01 16:38:04 -05:00
Slava Pestov 7fc44aa444 Add failing tests 2008-10-31 21:07:57 -05:00
Slava Pestov 2fb17458e3 Fix duplication 2008-10-28 16:22:54 -07:00