memory word cleanups, sdl numlock fix

cvs
Slava Pestov 2005-02-21 01:38:24 +00:00
parent a0c7e80835
commit 0f2d8b218b
3 changed files with 8 additions and 11 deletions

View File

@ -14,13 +14,11 @@
- code gc - code gc
- #jump-f #jump-f-label - #jump-f #jump-f-label
- extract word inside M:, C:, and structure browsing for these - extract word inside M:, C:, and structure browsing for these
- references primitive
- fix completion invoke in middle of word - fix completion invoke in middle of word
- don't hardcode so many colors - don't hardcode so many colors
- ffi unicode strings: null char security hole - ffi unicode strings: null char security hole
- utf16 string boxing - utf16 string boxing
- more accurate types for various words - more accurate types for various words
- optimize out >array, >tuple, >hashtable etc
- write read: write should flush - write read: write should flush
+ compiler/ffi: + compiler/ffi:

View File

@ -42,8 +42,9 @@ SYMBOL: modifiers
[[ "ALT" HEX: 0200 ]] [[ "ALT" HEX: 0200 ]]
[[ "META" HEX: 0400 ]] [[ "META" HEX: 0400 ]]
[[ "META" HEX: 0800 ]] [[ "META" HEX: 0800 ]]
[[ "NUM" HEX: 1000 ]] ! We ignore these two modifiers since they're mighty useless
[[ "CAPS" HEX: 2000 ]] ! [[ "NUM" HEX: 1000 ]]
! [[ "CAPS" HEX: 2000 ]]
[[ "MODE" HEX: 4000 ]] [[ "MODE" HEX: 4000 ]]
] modifiers set ] modifiers set

View File

@ -36,12 +36,12 @@ namespaces prettyprint stdio unparser vectors words ;
end-scan rethrow end-scan rethrow
] catch ; inline ] catch ; inline
: instances ( class -- list ) : instances ( quot -- list )
#! Return a list of all instances of a built-in or tuple #! Return a list of all object that return true when the
#! class in the image. #! quotation is applied to them.
[ [
[ [
dup class pick = [ , ] [ drop ] ifte [ swap call ] 2keep rot [ , ] [ drop ] ifte
] each-object drop ] each-object drop
] make-list ; ] make-list ;
@ -70,9 +70,7 @@ M: object (each-slot) ( quot obj -- )
: references ( obj -- list ) : references ( obj -- list )
#! Return a list of all objects that refer to a given object #! Return a list of all objects that refer to a given object
#! in the image. #! in the image.
[ ] [ [ dupd refers? ] instances nip ;
pick over refers? [ swons ] [ drop ] ifte
] each-object nip ;
: vector+ ( n index vector -- ) : vector+ ( n index vector -- )
[ vector-nth + ] 2keep set-vector-nth ; [ vector-nth + ] 2keep set-vector-nth ;