+ 0.89: = fixes: - load primitive-types in the target not the host - test factor with compiz - memory leak on os x - ffi_test_18 on windows - compiled call traces do not work if the runtime is built with -fomit-frame-pointer on ppc (and amd64?) - cocoa: international keys don't work - >bit-array doesn't work for tuples - %allot-bignum-signed-1 doesn't work for zero or numbers which don't fit in 30 bits - parsing word print demo doesn't work in ui listener - error popup obscures input area - poorly documented vocabs: - alien - cocoa - compiler - completion - image - interpreter - objc - optimizer - crc32: unicode = performance: - do relative label relocations ahead of time - do we ever have absolute label relocations? - float-mod intrinsic - hashed generic dispatch - if a loc appears multiple times on the phantom-stack, then we read it more than once as each occurrence is vreg-ified - see if these are still Too Slow: - "factor.image" run-file should fail quicker! - 10000 [ dup number>string ] map>hash describe in the UI - apropos - available-modules - md5, crc32 - 100000 [ "\"hello\" not" eval drop ] times - compilation - make-image = features: - replace $see-also with a better system - add full support for long longs to ffi - double args in arm ffi - integrate libs/unicode/ - single stepper: abadon feature which throws exception & continues - overhaul parser - variable width word wrap - if we're printing a block on multiple lines, break at some words like set off on % # , ... and assembler opcodes - don't end lines with literals, shuffle words or symbols? - see should try to not show ; on a line by itself - IN: on its own line if the entire 'see' form doesn't fit - command buttons: indicate shortcuts - how do we refer to command shortcuts in the docs? + 0.90: = fixes: - models: don't do redundant work - auto-update browser and help when sources reload - new windows don't always have focus, eg focus follows mouse - should be possible to load multiple i/o backends, compiler backends, ui backends etc without problems = performance: - float arrays - work on making spectral norm fast - permgen - inline allocators for constant size tuples and arrays - no write barrier for stores of immediates - more arm intrinsics: fixnum<>bignum conversions, (set-)char-slot, overflowing fixnum+ fixnum-, set-slot - compiled continuations - continue overflow check removal work: nappend - memcspn is ugly, remove it and get a Factor inner loop to be as fast - no need to generate dead code after a tail call - why is every fp reg shadowed by an int reg? - can def-use get the other case of fixnum-compare + conditional? - >r >r fixnum< r> r> rot [ ... ] [ ... ] if -- use an if-intrinsic here - cross-word type inference = features: - better tuple constructors - case: support constant words - new module system - graphical crossref tool - inspector where slot values can be changed - some kind of declarative wiring framework for ui - tuple shape changes - UI unit test tool - copying pane output - right-click menu for words and links: show both word and link commands + 0.91: = fixes: - [ [ dup call ] dup call ] infer hangs - fix conditions and restarts to work like CL - amd64 structs-by-value bug - float= doesn't consider nans equal - clarify role of -0.0 - if a word drops the stack pointer below the bottom, then an error won't be thrown until the next word accesses the stack - should be possible to reload any source file in library - slice: if sequence or seq start is changed, abstraction violation - callstack overflow when compiling mutually recursive inline words = performance: - see if its possible to only repaint dirty regions - minor GC takes too long now, we should card mark code heap - incremental GC - prettyprinter: don't build entire tree to print first - ui inspector should work with very large objects = features: - compiling 'curry' - editor: - autoscroll - transpose char/word/line - more efficient multi-line inserts - automatic help/effects for slot accessors + before 1.0: - building minimal images - cross compiling - UDP - factor should be an embeddable DLL - profiler - ipv6 - structure editor