88 lines
2.5 KiB
Plaintext
88 lines
2.5 KiB
Plaintext
+ inference/interpreter:
|
|
|
|
- : bin 5 [ 5 bin bin 5 ] [ 2drop ] ifte ;
|
|
- combinator inference
|
|
- generic/2generic inference
|
|
- type inference
|
|
- [ 2 2 . ] run fails
|
|
- some way to step over a word in the stepper
|
|
- step: print NEXT word to execute, not word that JUST executed
|
|
- cache stack effects
|
|
- once generic inference is done, can-compile is "has stack effect!"
|
|
|
|
+ compiler/ffi:
|
|
|
|
- compiling when*
|
|
- compiling each, etc.
|
|
- getenv/setenv: if literal arg, compile as a load/store
|
|
- inline words
|
|
- compiler: drop literal peephole optimization
|
|
- is signed -vs- unsigned pointers an issue?
|
|
- bitfields in C structs
|
|
- SDL_Rect** type
|
|
- struct membres that are not *
|
|
- float types
|
|
- compile word twice; no more 'cannot compile' error!
|
|
- perhaps /i should work with all numbers
|
|
- assembler opcodes dispatch on operand types
|
|
- lifting
|
|
- save code in image
|
|
|
|
+ listener/plugin:
|
|
|
|
- extract word in wrong place
|
|
- twice in completion list
|
|
- accept multi-line input in listener
|
|
- don't show listener on certain commands
|
|
- NPE in ErrorHighlight
|
|
- some way to not have previous definitions from a source file
|
|
clutter the namespace
|
|
- use inferior.factor for everything not just listener
|
|
- fedit broken with listener
|
|
- maple-like: press enter at old commands to evaluate there
|
|
- completion in the listener
|
|
- special completion for USE:/IN:
|
|
|
|
+ kernel:
|
|
|
|
- save restore stacks between longjmp in case they are in registers
|
|
- profiler is inaccurate: wrong word on cs
|
|
- better i/o scheduler
|
|
- >lower, >upper for strings
|
|
- don't rehash strings on every startup
|
|
- remove sbufs
|
|
- cat, reverse-cat primitives
|
|
- first-class hashtables
|
|
- hash words in stage 2 of bootstrap
|
|
- rewrite accessors and mutators in Factor, with slot/set-slot primitive
|
|
- replace -export-dynamic with sundry-xt
|
|
- add a socket timeout
|
|
|
|
+ misc:
|
|
|
|
- alist -vs- assoc terminology
|
|
- jedit ==> jedit-word, jedit takes a file name
|
|
- 'cascading' styles
|
|
- command line parsing cleanup
|
|
- nicer way to combine two paths
|
|
- :get &get
|
|
- namestack, catchstack lists
|
|
- OOP
|
|
- room. prints code heap size
|
|
- refactor sort
|
|
- ditch java factor
|
|
- ditch object paths
|
|
- browser responder for word links in HTTPd; inspect responder for
|
|
objects
|
|
- use keep instead of tuck, try to remove usages of transp
|
|
- worddef props
|
|
- prettyprint: when unparse called due to recursion, write a link
|
|
- prettyprinter should output {{ ... }} syntax for hashtables
|
|
- FORGET: and forget
|
|
|
|
+ httpd:
|
|
|
|
- log with date
|
|
- basic authentication, using httpdAuth function from a config file
|
|
- file responder; last-modified field
|