Concatenative language
Concatenative topics
Concatenative meta
Other languages
Meta
- generic math: inline the method body in method combination. we used to do this but it created problems for redefinition; if this can be solved it will eliminate an unnecessary jump in non-optimized execution - memoized words with no inputs can perform the same as CONSTANT: instead of doing a hashtable lookup Fixed: - we can use %memset_pattern% to initialize strings, arrays on OS X 10.5; actually it will be better to use SSE2 and AltiVec directly instead, more portable... Prunedtree says "can't you write your own optimized memset with intrinsics ? It's not much code and it would be more portable. I can provide the x86 code if you want" - <range> is slow; %/ 1 + 0 max >integer% no good - struct returns: compiler needs to know they're byte-arrays so it can optimize complex float boxing - uninitialized byte arrays - %reallot_byte_array()% zeroes too much - finish asm fixnum primitives - %array-capacity?%: try not using %between?% - linear search of %recursive-state% - make %M: word hashcode*% foldable - we're inserting redundant 0 fixnum>= checks in tuple dispatch engine - unnecessary %7 slot% calls in hashed dispatch - %not% and %>boolean% should be branchless - %case% with words has %[ t ] [ f ] if% awkwardness - dispatch: small dispatch over hi-tag doesn't need to 8 fixnum-fast - make sure that %0 slot% in dispatch is the known-tag case - %^% can be faster; if base is a multiple of a power of two, factor out the power of 2 and use a shift, and use binary-reduce to multiple together the rest
Describe this revision:
Save