]> gitweb.factorcode.org Git - factor.git/commitdiff
words: Change word -> last-word, set-word -> set-last-word.
authorDoug Coleman <doug.coleman@gmail.com>
Sat, 23 Mar 2013 23:05:14 +0000 (16:05 -0700)
committerDoug Coleman <doug.coleman@gmail.com>
Sat, 23 Mar 2013 23:12:03 +0000 (16:12 -0700)
13 files changed:
basis/alien/parser/parser.factor
basis/bootstrap/image/image.factor
basis/functors/backend/backend.factor
basis/functors/functors.factor
basis/typed/typed.factor
core/classes/parser/parser.factor
core/generic/parser/parser.factor
core/parser/parser.factor
core/syntax/syntax.factor
core/words/words-docs.factor
core/words/words-tests.factor
core/words/words.factor
extra/multi-methods/multi-methods.factor

index e3c33a3ba08f5a58b956f55868947a72f15e6d53..e2d93ee4ade1ea3eb36371f3fb2663a8c965176e 100755 (executable)
@@ -61,7 +61,7 @@ ERROR: *-in-c-type-name name ;
 : (CREATE-C-TYPE) ( word -- word )
     validate-c-type-name current-vocab create {
         [ fake-definition ]
-        [ set-word ]
+        [ set-last-word ]
         [ reset-c-type ]
         [ ]
     } cleave ;
index d883109507d49d98dac1537c09d29afbe6285337..0e9946b44900e2bd16c672114ba39fd8f36efdda 100755 (executable)
@@ -566,7 +566,7 @@ M: quotation '
     fixup-header
     "Image length: " write image get length .
     "Object cache size: " write objects get assoc-size .
-    \ word global delete-at
+    \ last-word-symbol global delete-at
     image get ;
 
 ! Image output
index 1528053f5fda748a4b905f1ba7547053fa8114cb..834092d13ae161d9add9c5f27e8fca8c30475cd5 100644 (file)
@@ -25,13 +25,13 @@ SYNTAX: FUNCTOR-SYNTAX:
 : scan-c-type-param ( -- c-type/param )
     scan-token dup "{" = [ drop \ } parse-until >array ] [ >string-param ] if ;
 
-: define* ( word def -- ) over set-word define ;
+: define* ( word def -- ) over set-last-word define ;
 
 : define-declared* ( word def effect -- )
-    pick set-word define-declared ;
+    pick set-last-word define-declared ;
 
 : define-simple-generic* ( word effect -- )
-    over set-word define-simple-generic ;
+    over set-last-word define-simple-generic ;
 
 : define-tuple-class* ( class superclass slots -- )
-    pick set-word define-tuple-class ;
+    pick set-last-word define-tuple-class ;
index 1aea9fa7edf39966c0f88e9ad1871a5f0a6097a0..904a22d4486f30fff6369ffcc45afe69ff536f10 100644 (file)
@@ -64,7 +64,7 @@ FUNCTOR-SYNTAX: TUPLE:
     \ define-tuple-class* suffix! ;
 
 FUNCTOR-SYNTAX: final
-    [ word make-final ] append! ;
+    [ last-word make-final ] append! ;
 
 FUNCTOR-SYNTAX: SINGLETON:
     scan-param suffix!
@@ -117,7 +117,7 @@ FUNCTOR-SYNTAX: MACRO:
     parse-declared*
     \ define-macro suffix! ;
 
-FUNCTOR-SYNTAX: inline [ word make-inline ] append! ;
+FUNCTOR-SYNTAX: inline [ last-word make-inline ] append! ;
 
 FUNCTOR-SYNTAX: call-next-method T{ fake-call-next-method } suffix! ;
 
index a658fbf44b8ce32f441c1641db1baa5541ba0c2e..1a368c94468322e64864151f14dec3fd36dc9487 100644 (file)
@@ -154,7 +154,7 @@ PRIVATE>
 : define-typed ( word def effect -- )
     [ [ 2drop ] [ typed-def ] [ 2nip ] 3tri define-inline ] 
     [ drop "typed-def" set-word-prop ]
-    [ 2drop "typed-word" word-prop \ word set-global ] 3tri ;
+    [ 2drop "typed-word" word-prop set-last-word ] 3tri ;
 
 SYNTAX: TYPED:
     (:) define-typed ;
index dc69b642682ab3b4d4f1ac6cf0afc88958c9e76d..568c49065ffe1446200aa02d319a5bc917817720 100644 (file)
@@ -9,7 +9,7 @@ IN: classes.parser
 : create-class-in ( string -- word )
     current-vocab create
     dup t "defining-class" set-word-prop
-    dup set-word
+    dup set-last-word
     dup save-class-location
     dup create-predicate-word save-location ;
 
index f781a92e02b0359ea356a75e34897bfeb75a1fd3..53baf6b6c3922d1f6bb6d09fd10ddc3ea60055db 100644 (file)
@@ -12,7 +12,7 @@ ERROR: not-in-a-method-error ;
     [ scan-new-generic ] dip call scan-effect define-generic ; inline
 
 : create-method-in ( class generic -- method )
-    create-method dup set-word dup save-location ;
+    create-method dup set-last-word dup save-location ;
 
 : define-inline-method ( class generic quot -- )
     [ create-method-in ] dip [ define ] [ drop make-inline ] 2bi ;
@@ -38,7 +38,7 @@ SYMBOL: current-method
 ERROR: bad-method-effect ;
 
 : check-method-effect ( effect -- )
-    word generic-effect method-effect= [ bad-method-effect ] unless ;
+    last-word generic-effect method-effect= [ bad-method-effect ] unless ;
 
 : ?execute-parsing ( word/number -- seq )
     dup parsing-word?
index 9444b117b329d3fa28a7e6807b248d0de412316a..a212868dd33318db4d47403d22c23520e5075573 100644 (file)
@@ -18,7 +18,7 @@ IN: parser
 M: parsing-word stack-effect drop ( parsed -- parsed ) ;
 
 : create-in ( str -- word )
-    current-vocab create dup set-word dup save-location ;
+    current-vocab create dup set-last-word dup save-location ;
 
 SYMBOL: auto-use?
 
index 0eaece8a9d34500ec1a9c3770b74f62930d22eea..66b2428d6dbf5c3fb9aa60ee5e892832d72af34d 100644 (file)
@@ -105,12 +105,12 @@ IN: bootstrap.syntax
     "POSTPONE:" [ scan-word suffix! ] define-core-syntax
     "\\" [ scan-word <wrapper> suffix! ] define-core-syntax
     "M\\" [ scan-word scan-word lookup-method <wrapper> suffix! ] define-core-syntax
-    "inline" [ word make-inline ] define-core-syntax
-    "recursive" [ word make-recursive ] define-core-syntax
-    "foldable" [ word make-foldable ] define-core-syntax
-    "flushable" [ word make-flushable ] define-core-syntax
-    "delimiter" [ word t "delimiter" set-word-prop ] define-core-syntax
-    "deprecated" [ word make-deprecated ] define-core-syntax
+    "inline" [ last-word make-inline ] define-core-syntax
+    "recursive" [ last-word make-recursive ] define-core-syntax
+    "foldable" [ last-word make-foldable ] define-core-syntax
+    "flushable" [ last-word make-flushable ] define-core-syntax
+    "delimiter" [ last-word t "delimiter" set-word-prop ] define-core-syntax
+    "deprecated" [ last-word make-deprecated ] define-core-syntax
 
     "SYNTAX:" [
         scan-new-word parse-definition define-syntax
@@ -136,7 +136,7 @@ IN: bootstrap.syntax
 
     "DEFER:" [
         scan-token current-vocab create
-        [ fake-definition ] [ set-word ] [ undefined-def define ] tri
+        [ fake-definition ] [ set-last-word ] [ undefined-def define ] tri
     ] define-core-syntax
     
     "ALIAS:" [
@@ -206,7 +206,7 @@ IN: bootstrap.syntax
     ] define-core-syntax
 
     "final" [
-        word make-final
+        last-word make-final
     ] define-core-syntax
 
     "SLOT:" [
index 5e313a859b446c0a910bf8de55778b688955442f..3f5dca6d2e630d9d89ae5a8612c34fb3c8e1fc1b 100644 (file)
@@ -268,14 +268,14 @@ HELP: gensym
 HELP: bootstrapping?
 { $var-description "Set by the library while bootstrap is in progress. Some parsing words need to behave differently during bootstrap." } ;
 
-HELP: word
+HELP: last-word
 { $values { "word" word } }
 { $description "Outputs the most recently defined word." }
 { $class-description "The class of words. One notable subclass is " { $link class } ", the class of class words." } ;
 
-{ word set-word save-location } related-words
+{ last-word set-last-word save-location } related-words
 
-HELP: set-word
+HELP: set-last-word
 { $values { "word" word } }
 { $description "Sets the recently defined word." } ;
 
index 2b707bc3bf9d6c71be032cc997b0207962227b90..60673c6c7e716b8d9b7524d9dc6d13973a4cf5fc 100644 (file)
@@ -80,7 +80,7 @@ DEFER: deferred
 [ f ] [ "no-loc-2" "words.tests" lookup-word where ] unit-test
 
 [ ] [ "IN: words.tests : test-last ( -- ) ;" eval( -- ) ] unit-test
-[ "test-last" ] [ word name>> ] unit-test
+[ "test-last" ] [ last-word name>> ] unit-test
 
 "undef-test" "words.tests" lookup-word [
     [ forget ] with-compilation-unit
index 56ef998d7d2ea6545aca18b25590a240082b52b2..398e4288630073194d015c486ff01b2a9056cea9 100644 (file)
@@ -11,9 +11,16 @@ BUILTIN: word
 { def quotation initial: [ ] } props pic-def pic-tail-def
 { sub-primitive read-only } ;
 
-: word ( -- word ) \ word get-global ;
+! Need a dummy word here because BUILTIN: word is not a real word
+! and parse-datum looks for things that are actually words instead of
+! also looking for classes
+: word ( -- * ) "dummy word" throw ;
 
-: set-word ( word -- ) \ word set-global ;
+SYMBOL: last-word-symbol
+
+: last-word ( -- word ) \ last-word-symbol get-global ;
+
+: set-last-word ( word -- ) \ last-word-symbol set-global ;
 
 M: word execute (execute) ;
 
index 1a0a80073ad29742b36152cc9d511b37155ec81e..a22bd6f490cd8d706312c7ea37eefeeb6d9aa69b 100644 (file)
@@ -230,7 +230,7 @@ SYNTAX: GENERIC: scan-new-word scan-effect define-generic ;
     parse-definition [ 2 tail ] [ second ] [ first ] tri ;
 
 : create-method-in ( specializer generic -- method )
-    create-method dup save-location f set-word ;
+    create-method dup save-location f set-last-word ;
 
 : scan-new-method ( -- method )
     scan-word scan-object swap create-method-in ;