Doug Coleman
							
						 
						
							 
							
							
							
								
							
								3ba787b277 
								
							
								 
							
						 
						
							
							
								
								core/basis: trim down using lists  
							
							 
							
							
							
						 
						
							2011-11-30 23:15:42 -08:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								c731dc6edb 
								
							
								 
							
						 
						
							
							
								
								Rename lookup to lookup-word.  
							
							 
							
							
							
						 
						
							2011-11-06 16:00:00 -08: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  
						
					 
				
					
						
							
							
								 
								John Benediktsson
							
						 
						
							 
							
							
							
								
							
								9f34c9c676 
								
							
								 
							
						 
						
							
							
								
								Spelling fixes to documentation.  
							
							 
							
							
							
						 
						
							2011-08-26 16:20:31 -07:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								8507bd1fce 
								
							
								 
							
						 
						
							
							
								
								generic.single: fix bug where dynamic and static dispatch didn't co-incide (reported by Mitchell N. Charity and others)  
							
							 
							
							
							
						 
						
							2010-08-21 18:12:00 -07:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0d6f3354ab 
								
							
								 
							
						 
						
							
							
								
								generic: clean up unit tests a bit  
							
							 
							
							
							
						 
						
							2010-08-21 13:04:37 -07:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								962d039852 
								
							
								 
							
						 
						
							
							
								
								Rename specific-method to method-for-class, rename (effective-method) to method-for-object, and make both much faster  
							
							 
							
							
							
						 
						
							2009-09-21 17:42:20 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								fd3a568191 
								
							
								 
							
						 
						
							
							
								
								Fix GENERIC# with out of bounds dispatch position  
							
							 
							
							
							
						 
						
							2009-05-12 20:47:20 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								581d017b46 
								
							
								 
							
						 
						
							
							
								
								Working on inline caching for tail call sites  
							
							 
							
							
							
						 
						
							2009-05-06 19:22:22 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								84fe4a7d67 
								
							
								 
							
						 
						
							
							
								
								generic.standard: remove bogus error check  
							
							 
							
							
							
						 
						
							2009-05-05 09:12:49 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								b4088373b7 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'master' of git://factorcode.org/git/factor  
							
							 
							
							
							
						 
						
							2009-05-04 05:16:47 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								58512cbbdb 
								
							
								 
							
						 
						
							
							
								
								Cleaning up VM code  
							
							 
							
							
							
						 
						
							2009-05-02 09:19:09 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								0ad6d1fb7b 
								
							
								 
							
						 
						
							
							
								
								add a few usages of iota, remove most 1+ and 1- from core  
							
							 
							
							
							
						 
						
							2009-05-01 19:58:24 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								59d6131c7c 
								
							
								 
							
						 
						
							
							
								
								Bum 3 instructions out of megamorphic fast path by switching to fixed-size caches  
							
							 
							
							
							
						 
						
							2009-04-30 04:14:14 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								515c619202 
								
							
								 
							
						 
						
							
							
								
								Non-optimizing compiler now open-codes megamorphic dispatch fast path  
							
							 
							
							
							
						 
						
							2009-04-30 03:37:07 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								bd186b6320 
								
							
								 
							
						 
						
							
							
								
								Eliminate 3 instructions from PIC fast path  
							
							 
							
							
							
						 
						
							2009-04-29 21:32:05 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								02bd4f3f00 
								
							
								 
							
						 
						
							
							
								
								PICs now pass the method table around instead of extracting it from the generic word body. This gels better with how compilation units are supposed to work  
							
							 
							
							
							
						 
						
							2009-04-29 19:39:43 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								dbc1a8e1a3 
								
							
								 
							
						 
						
							
							
								
								Only generate cold call entry points for standard generics and not hooks  
							
							 
							
							
							
						 
						
							2009-04-28 18:17:28 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								5b53562c7b 
								
							
								 
							
						 
						
							
							
								
								Add better error checking for INSTANCE: and GENERIC#, and remove unnecessary word props when generic word's combination changes  
							
							 
							
							
							
						 
						
							2009-04-28 17:56:15 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								7aa65b5b5f 
								
							
								 
							
						 
						
							
							
								
								Fixing new method dispatch implementation  
							
							 
							
							
							
						 
						
							2009-04-25 19:41:27 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								3dc9fdf9db 
								
							
								 
							
						 
						
							
							
								
								Fleshed out new dispatch code  
							
							 
							
							
							
						 
						
							2009-04-24 20:43:01 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								8c5b0373a8 
								
							
								 
							
						 
						
							
							
								
								Working on new method dispatch system  
							
							 
							
							
							
						 
						
							2009-04-24 15:31:06 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								48e70b65fa 
								
							
								 
							
						 
						
							
							
								
								Move cross-referencing stuff to tools.crossref since compiler doesn't depend on it anymore, and compute cross-referencing index as needed; reduces image size by ~4Mb  
							
							 
							
							
							
						 
						
							2009-04-22 04:20:38 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a3c0dd44a1 
								
							
								 
							
						 
						
							
							
								
								Revert "Remove method-declaration stuff from generic.standard since hints accomplishes the same thing"  
							
							 
							
							... 
							
							
							
							This reverts commit 487b92074c . 
							
						 
						
							2009-04-22 00:15:48 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								487b92074c 
								
							
								 
							
						 
						
							
							
								
								Remove method-declaration stuff from generic.standard since hints accomplishes the same thing  
							
							 
							
							
							
						 
						
							2009-04-21 23:19:13 -05:00  
						
					 
				
					
						
							
							
								 
								Doug Coleman
							
						 
						
							 
							
							
							
								
							
								aad6a3d504 
								
							
								 
							
						 
						
							
							
								
								fixing compiler error in core  
							
							 
							
							
							
						 
						
							2009-04-17 12:45:57 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								fd5ab25a09 
								
							
								 
							
						 
						
							
							
								
								Better handling of errors without file/line info  
							
							 
							
							
							
						 
						
							2009-04-13 17:19:32 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								4fc2182ac8 
								
							
								 
							
						 
						
							
							
								
								define-generic and define-simple-generic now take stack effect parameters; math-combination is a singleton instead of a tuple  
							
							 
							
							
							
						 
						
							2009-03-22 18:00:26 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								667eca9410 
								
							
								 
							
						 
						
							
							
								
								Fix unit tests and help lint for 'see' move  
							
							 
							
							
							
						 
						
							2009-03-11 17:33:54 -05:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								03cb32ad9c 
								
							
								 
							
						 
						
							
							
								
								Make execute( faster, add execute-unsafe( and make effect tuple slots read only  
							
							 
							
							
							
						 
						
							2009-03-01 20:12:35 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								1951d739a0 
								
							
								 
							
						 
						
							
							
								
								Stack effect declarations are mandatory on all words now  
							
							 
							
							... 
							
							
							
							define-temp now takes an effect parameter
Fix compiler bug that Dan found
Stricter enforcement of * effects
Move compile-call from compiler.units to compiler 
							
						 
						
							2009-02-23 20:27:05 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								6b25e99470 
								
							
								 
							
						 
						
							
							
								
								Add summary for heaps more vocabs  
							
							 
							
							
							
						 
						
							2009-02-16 21:05:13 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								ca2f01e0d0 
								
							
								 
							
						 
						
							
							
								
								Updating non-core libraries for monotonic? change  
							
							 
							
							
							
						 
						
							2009-01-16 17:02:54 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								de3a4f5462 
								
							
								 
							
						 
						
							
							
								
								Change some dup ... swap to bi and keep  
							
							 
							
							
							
						 
						
							2008-12-15 21:20:32 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a56d480aa6 
								
							
								 
							
						 
						
							
							
								
								Various optimizations leading to a 10% speedup on compiling empty EBNF parser:  
							
							 
							
							... 
							
							
							
							- open-code getenv primitive
- inline tuple predicates in finalization
- faster partial dispatch
- faster built-in type predicates
- faster tuple predicates
- faster lo-tag dispatch
- compile V{ } clone and H{ } clone more efficiently
- add fixnum fast-path to =; avoid indirect branch if two fixnums not eq
- faster >alist on hashtables 
							
						 
						
							2008-12-06 09:16:29 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								0ba5304ee3 
								
							
								 
							
						 
						
							
							
								
								Fix assocs, generic.standard tests  
							
							 
							
							
							
						 
						
							2008-12-03 03:44:08 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								92cc760070 
								
							
								 
							
						 
						
							
							
								
								Fixes  
							
							 
							
							
							
						 
						
							2008-11-28 01:11:03 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								817510cdb9 
								
							
								 
							
						 
						
							
							
								
								Another attempt at size reduction  
							
							 
							
							
							
						 
						
							2008-11-28 01:08:16 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								c8f227ccf7 
								
							
								 
							
						 
						
							
							
								
								Tweak standard-next-method-quot to produce smaller quotations  
							
							 
							
							
							
						 
						
							2008-11-28 00:56:54 -06:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								a4d9cdfeb3 
								
							
								 
							
						 
						
							
							
								
								Refactor all usages of >r/r> in core to use dip, 2dip, 3dip  
							
							 
							
							... 
							
							
							
							Non-optimizing compiler now special-cases dip, 2dip, 3dip following a
literal quotation: this allows us to break the dip/slip meta-circle
without explicit calls to >r/r> 
							
						 
						
							2008-11-23 02:44:56 -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
							
						 
						
							 
							
							
							
								
							
								33a082c361 
								
							
								 
							
						 
						
							
							
								
								Fix reference to obsolete G: word  
							
							 
							
							
							
						 
						
							2008-11-10 02:43:16 -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
							
						 
						
							 
							
							
							
								
							
								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
							
						 
						
							 
							
							
							
								
							
								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
							
						 
						
							 
							
							
							
								
							
								2fb17458e3 
								
							
								 
							
						 
						
							
							
								
								Fix duplication  
							
							 
							
							
							
						 
						
							2008-10-28 16:22:54 -07:00  
						
					 
				
					
						
							
							
								 
								Slava Pestov
							
						 
						
							 
							
							
							
								
							
								95eb0f696b 
								
							
								 
							
						 
						
							
							
								
								Rice  
							
							 
							
							
							
						 
						
							2008-10-23 05:28:04 -05:00