013160df9a 
								
							
								 
							
						 
						
							
							
								
								change some "2drop 2drop" to "4drop".  
							
							
							
						 
						
							2012-10-23 12:21:30 -07:00  
				
					
						
							
							
								 
						
							
							
								27f445d505 
								
							
								 
							
						 
						
							
							
								
								assocs: Add sift-keys and sift-values. Remove three other implementations  
							
							... 
							
							
							
							of sift-values and use the new one. 
							
						 
						
							2012-08-23 22:36:10 -07:00  
				
					
						
							
							
								 
						
							
							
								b2ffda32ca 
								
							
								 
							
						 
						
							
							
								
								math: adding a fast-gcd that speeds up all ratio operations by up to 10 times for bignum ratios.  
							
							
							
						 
						
							2012-04-05 09:17:52 -07:00  
				
					
						
							
							
								 
						
							
							
								80e1c8e3f2 
								
							
								 
							
						 
						
							
							
								
								Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed.  
							
							
							
						 
						
							2011-10-18 13:19:39 -07:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								32b95c2cdf 
								
							
								 
							
						 
						
							
							
								
								math: add unordered comparison operators u< u<= u> u>= which behave exactly like < <= > >= except no floating point exceptions are set if one or both inputs are NaNs; also add efficient intrinsic for unordered? predicate, and fix propagation type functions for abs, absq, and bitnot  
							
							
							
						 
						
							2009-09-12 22:20:13 -05:00  
				
					
						
							
							
								 
						
							
							
								c468ed8962 
								
							
								 
							
						 
						
							
							
								
								integer/integer partial dispatch ops now use both-fixnums?  
							
							
							
						 
						
							2009-03-16 00:44:44 -05:00  
				
					
						
							
							
								 
						
							
							
								b6f6e880bf 
								
							
								 
							
						 
						
							
							
								
								Make partially dispatched integer ops foldable  
							
							
							
						 
						
							2009-03-11 13:57:13 -05:00  
				
					
						
							
							
								 
						
							
							
								669548e62e 
								
							
								 
							
						 
						
							
							
								
								Clean up some usages of tuck, and add Joe's curried cleave/spread/apply combinators to kernel vocabulary  
							
							
							
						 
						
							2009-02-02 13:43:54 -06:00  
				
					
						
							
							
								 
						
							
							
								145b635eb6 
								
							
								 
							
						 
						
							
							
								
								More optimization intended to reduce compile time. Another 10% speedup on compiling empty PEG parser  
							
							... 
							
							
							
							- new map-flat combinator replaces usages of 'map flatten' in compiler
- compiler.tree.def-use.simplified uses an explicit accumulator instead of flatten
- compiler.tree.tuple-unboxing uses an explicit accumulator instead of flatten
- fix inlining regression from last time: custom inlining results would sometimes be discarded
- compiler.tree's 3each and 3map combinators rewritten to not use flip
- rewrite math.partial-dispatch without locals (purely stylistic, no performance increase)
- hand-optimize flip for common arrays-of-arrays case
- don't run escape analysis and tuple unboxing if there are no allocations in the IR 
							
						 
						
							2008-12-06 11:17:19 -06:00  
				
					
						
							
							
								 
						
							
							
								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  
				
					
						
							
							
								 
						
							
							
								1361bb7d5c 
								
							
								 
							
						 
						
							
							
								
								derived-ops for shift didn't include fixnum-shift  
							
							
							
						 
						
							2008-11-30 04:44:52 -06:00  
				
					
						
							
							
								 
						
							
							
								4f5b0e5cd6 
								
							
								 
							
						 
						
							
							
								
								Oops  
							
							
							
						 
						
							2008-11-29 13:44:38 -06:00  
				
					
						
							
							
								 
						
							
							
								ae4f9a2809 
								
							
								 
							
						 
						
							
							
								
								Add fixnum/mod-fast and fixnum/i-fast subprimitives  
							
							
							
						 
						
							2008-11-21 02:11:36 -06:00  
				
					
						
							
							
								 
						
							
							
								d328589b87 
								
							
								 
							
						 
						
							
							
								
								Cleanup partial-dispatch by removing >r r> usage  
							
							
							
						 
						
							2008-11-17 17:59:15 -05:00  
				
					
						
							
							
								 
						
							
							
								7f3282bb39 
								
							
								 
							
						 
						
							
							
								
								Better error reporting  
							
							
							
						 
						
							2008-11-03 01:19:06 -06:00  
				
					
						
							
							
								 
						
							
							
								10c68ebb21 
								
							
								 
							
						 
						
							
							
								
								New modular arithmetic optimization pass  
							
							
							
						 
						
							2008-09-12 18:08:38 -05:00  
				
					
						
							
							
								 
						
							
							
								54232f80ca 
								
							
								 
							
						 
						
							
							
								
								Adding identity optimization pass, tweak inlining heuristic  
							
							
							
						 
						
							2008-09-12 08:18:44 -05:00  
				
					
						
							
							
								 
						
							
							
								44f53de164 
								
							
								 
							
						 
						
							
							
								
								Move make to its own vocabulary, remove fry _ feature  
							
							
							
						 
						
							2008-09-10 20:07:00 -05:00  
				
					
						
							
							
								 
						
							
							
								aa9341e579 
								
							
								 
							
						 
						
							
							
								
								Enforce that usages of >r/r> must be balanced within a quotation  
							
							
							
						 
						
							2008-08-18 20:49:03 -05:00  
				
					
						
							
							
								 
						
							
							
								f2a5a30c6f 
								
							
								 
							
						 
						
							
							
								
								New front-end and high-level optimizer lands  
							
							
							
						 
						
							2008-08-12 03:22:45 -05:00