factor/TODO.FACTOR.txt

121 lines
4.0 KiB
Plaintext

- auto-invoke code gc
- fix alien-callback/SEH bug on win32
- maybe simplify list into displaying list a sequence of strings
- x11: scroll up/down wiggles caret
- slider needs to be modelized
- some way of intercepting all gestures
- better help result ranking
- help search looks funny
- menus should not require mouse to be held
- tab completion: add a USE: if necessary
- completion is not ideal: eg, search for "buttons"
- live search: timer delay would be nice
+ ui:
- [ ] write in the UI breaks stuff
- pane output in UI should use less memory
- variable width word wrap
- needs layout tricks
- add-gadget, model-changed, set-model should compile
- graphical module manager tool
- list of modules -- loaded, not loaded
- each module has a list of files
- modules can be (re)loaded
- keyboard navigation
- ui browser: show currently selected vocab & words
- auto-update browser and help when sources reload
- how do we refer to command shortcuts in the docs?
- figure out if we need both set-model and set-model*
- roundoff is still not quite right with tracks
- fix top level window positioning
- x11.app has a problem with A+ keys
- services do not launch if factor not running
- fix ui listener delay
- editor:
- double/triple click
- autoscroll
- transpose char/word/line
- more efficient multi-line inserts
- write "foo| " and put caret at | then select word element: selects
space
- fonts/ should go inside the .app -- we need multi-tier resource-path
- should be possible to drop an image file on the .app to run it
- support x11's large selections, if needed
- own-selection violates ICCCM
- cocoa: windows are not updated while resizing
- grid slows down with 2000 lines
- see if its possible to only repaint dirty regions
- x11 title bars are funny
- rollover is not updated on window focus changes
- x11 input methods
- cocoa:
- horizontal wheel scrolling
- polish OS X menu bar code
- structure editor
+ module system:
- convention for main entry point of a module
- convention for main help article of a module
- track a list of assets loaded from each module's file
- generic 'define ( asset def -- )'
- C types should be words
- TYPEDEF: float { ... } { ... } ; ==> \ float T{ c-type ... } "c-type" swp
- TYPEDEF: float FTFloat ; ==> \ float \ FTFloat "c-type" swp
- make typedef aliasing explicit
- seeing a C struct word should show its def
- file out
+ compiler/ffi:
- more compact relocation info
- cocoa: support real redefinition
- problem if major gc happens during relocation
- in fact relocation should not cons at all
- stdcall callbacks
- see if alien calls can be made faster
- compiler tests are not as reliable now because of try-compile usage
- we can just do [ t ] [ \ foo compiled? ] unit-test
- [ [ dup call ] dup call ] infer hangs
- callstack overflow when compiling mutually recursive inline words
- test what is done in the case of an invalid declaration on an inline
recursive
- ppc64 backend
- arm backend
- mac intel: struct returns from objc methods
- fix compiled gc check
- there was a performance hit, investigate
- float boxing and overflow checks need a gc check too
- float= doesn't consider nans equal
- intrinsic fixnum>float float>fixnum
- C functions returning structs by value
- infer which variables are read, written in a quotation
- compiled continuations
- compiled call traces
+ misc:
- hashed generic method dispatch
- fix this:
[ 1 2 3 4 5 6 7 8 9 10 10 10 10 10 10 10 10 10 10 11 11 11 113 ] .
[ 1 2 3 4 5 6 7 8 9 10 10 10 10 10 10 10 10 10 10 11 11 11 113
]
- prettier printing of hashtable literals, alists, cond, ...
- minor GC takes too long now, we should card mark code heap
- buffer-ptr should be an alien
- swap nappend ==> nappend
- sometimes darcs get fails with the httpd
- gdb triggers 'mutliple i/o ops on port' error
- factorcode httpd crashed: bad file descriptor
- growable data heap
- incremental GC
- UDP
- slice: if sequence or seq start is changed, abstraction violation
+ httpd:
- help responder has no way to access { "foo" "bar" }
- httpd search tools
- remaining HTML issues need fixing