From 815591e10c99548283865906983a502bef4ab14a Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Thu, 12 Oct 2017 21:22:41 -0500 Subject: [PATCH] factor: m: { a b } -> M\\ a b --- basis/compiler/cfg/builder/builder-tests.factor | 2 +- basis/compiler/tests/optimizer.factor | 2 +- basis/compiler/tests/redefine14.factor | 2 +- basis/compiler/tests/simple.factor | 2 +- .../tree/propagation/transforms/transforms.factor | 6 +++--- basis/hints/hints-tests.factor | 4 ++-- basis/hints/hints.factor | 4 ++-- basis/locals/locals-tests.factor | 2 +- basis/prettyprint/backend/backend.factor | 3 +-- basis/prettyprint/prettyprint-tests.factor | 8 ++++---- basis/random/unix/unix.factor | 2 +- basis/tools/annotations/annotations-tests.factor | 2 +- basis/tools/crossref/crossref-tests.factor | 2 +- basis/ui/traverse/traverse-tests.factor | 2 +- core/bootstrap/syntax.factor | 2 +- core/classes/intersection/intersection-tests.factor | 2 +- core/classes/tuple/tuple-tests.factor | 6 +++--- core/generic/generic-docs.factor | 10 +++++----- core/generic/hook/hook-tests.factor | 2 +- core/generic/standard/standard-tests.factor | 8 ++++---- core/syntax/syntax.factor | 2 +- extra/benchmark/raytracer/raytracer.factor | 4 ++-- 22 files changed, 39 insertions(+), 40 deletions(-) diff --git a/basis/compiler/cfg/builder/builder-tests.factor b/basis/compiler/cfg/builder/builder-tests.factor index 74aef68a70..92e49b86ff 100644 --- a/basis/compiler/cfg/builder/builder-tests.factor +++ b/basis/compiler/cfg/builder/builder-tests.factor @@ -227,7 +227,7 @@ IN: compiler.cfg.builder.tests ] when ! Regression. Make sure everything is inlined correctly -{ f } [ m: { hashtable set-at } [ { [ ##call? ] [ word>> \ set-slot eq? ] } 1&& ] contains-insn? ] unit-test +{ f } [ M\\ hashtable set-at [ { [ ##call? ] [ word>> \ set-slot eq? ] } 1&& ] contains-insn? ] unit-test ! Regression. Make sure branch splitting works. { 2 } [ [ 1 2 ? ] [ ##return? ] count-insns ] unit-test diff --git a/basis/compiler/tests/optimizer.factor b/basis/compiler/tests/optimizer.factor index c379cf834a..cc853f44c9 100644 --- a/basis/compiler/tests/optimizer.factor +++ b/basis/compiler/tests/optimizer.factor @@ -12,7 +12,7 @@ IN: compiler.tests.optimizer GENERIC: xyz ( obj -- obj ) M: array xyz xyz ; -[ t ] [ m: { array xyz } word-optimized? ] unit-test +[ t ] [ M\\ array xyz word-optimized? ] unit-test ! Test predicate inlining : pred-test-1 ( a -- b c ) diff --git a/basis/compiler/tests/redefine14.factor b/basis/compiler/tests/redefine14.factor index ce99d8327e..33cf647d00 100644 --- a/basis/compiler/tests/redefine14.factor +++ b/basis/compiler/tests/redefine14.factor @@ -5,4 +5,4 @@ TUPLE: bad ; M: bad length 1 2 3 ; -[ ] [ [ m: { bad length } forget ] with-compilation-unit ] unit-test +[ ] [ [ M\\ bad length forget ] with-compilation-unit ] unit-test diff --git a/basis/compiler/tests/simple.factor b/basis/compiler/tests/simple.factor index 20104b0fe3..4b92966718 100644 --- a/basis/compiler/tests/simple.factor +++ b/basis/compiler/tests/simple.factor @@ -252,7 +252,7 @@ M: quotation bad-effect-test call ; inline [ bad-effect-test* ] [ not-compiled? ] must-fail-with ! Don't want compiler error to stick around -[ ] [ [ m: { quotation bad-effect-test } forget ] with-compilation-unit ] unit-test +[ ] [ [ M\\ quotation bad-effect-test forget ] with-compilation-unit ] unit-test ! Make sure time bombs literalize [ [ \ + call ] compile-call ] [ no-method? ] must-fail-with diff --git a/basis/compiler/tree/propagation/transforms/transforms.factor b/basis/compiler/tree/propagation/transforms/transforms.factor index eaea72ebec..bea700622a 100644 --- a/basis/compiler/tree/propagation/transforms/transforms.factor +++ b/basis/compiler/tree/propagation/transforms/transforms.factor @@ -302,17 +302,17 @@ CONSTANT: lookup-table-at-max 256 : diff-quot ( seq -- quot: ( seq' -- seq'' ) ) [ tester ] keep '[ members [ @ ] reject _ set-like ] ; -m: { sets:set diff } [ diff-quot ] 1 define-partial-eval +M\\ sets:set diff [ diff-quot ] 1 define-partial-eval : intersect-quot ( seq -- quot: ( seq' -- seq'' ) ) [ tester ] keep '[ members _ filter _ set-like ] ; -m: { sets:set intersect } [ intersect-quot ] 1 define-partial-eval +M\\ sets:set intersect [ intersect-quot ] 1 define-partial-eval : intersects?-quot ( seq -- quot: ( seq' -- seq'' ) ) tester '[ members _ any? ] ; -m: { sets:set intersects? } [ intersects?-quot ] 1 define-partial-eval +M\\ sets:set intersects? [ intersects?-quot ] 1 define-partial-eval : bit-quot ( #call -- quot/f ) in-d>> second value-info interval>> 0 fixnum-bits [a,b] interval-subset? diff --git a/basis/hints/hints-tests.factor b/basis/hints/hints-tests.factor index 067bab3296..896330eeb8 100644 --- a/basis/hints/hints-tests.factor +++ b/basis/hints/hints-tests.factor @@ -7,6 +7,6 @@ GENERIC: blahblah ( a b c -- ) M: hashtable blahblah 2nip [ 1 + ] change-count drop ; -HINTS: m: { hashtable blahblah } { object fixnum object } { object word object } ; +HINTS: M\\ hashtable blahblah { object fixnum object } { object word object } ; -{ t } [ m: { hashtable blahblah } { count>> count<< } inlined? ] unit-test +{ t } [ M\\ hashtable blahblah { count>> count<< } inlined? ] unit-test diff --git a/basis/hints/hints.factor b/basis/hints/hints.factor index 063157e019..b540d7d07f 100644 --- a/basis/hints/hints.factor +++ b/basis/hints/hints.factor @@ -135,10 +135,10 @@ set-specializer \ base> { string fixnum } set-specializer -m: { hashtable at* } +M\\ hashtable at* { { fixnum object } { word object } } set-specializer -m: { hashtable set-at } +M\\ hashtable set-at { { object fixnum object } { object word object } } set-specializer diff --git a/basis/locals/locals-tests.factor b/basis/locals/locals-tests.factor index 0d217e6f00..bd5c641d4d 100644 --- a/basis/locals/locals-tests.factor +++ b/basis/locals/locals-tests.factor @@ -383,7 +383,7 @@ GENERIC: lambda-method-forget-test ( a -- b ) M:: integer lambda-method-forget-test ( a -- b ) a ; -{ } [ [ m: { integer lambda-method-forget-test } forget ] with-compilation-unit ] unit-test +{ } [ [ M\\ integer lambda-method-forget-test forget ] with-compilation-unit ] unit-test { 10 } [ 10 |[ A | { [ A ] } ] call first call ] unit-test diff --git a/basis/prettyprint/backend/backend.factor b/basis/prettyprint/backend/backend.factor index 29fec32de5..ae783b27e8 100644 --- a/basis/prettyprint/backend/backend.factor +++ b/basis/prettyprint/backend/backend.factor @@ -61,10 +61,9 @@ M: word pprint* M: method pprint* ; : pprint-prefixed-number ( n quot: ( n -- n' ) pre -- ) diff --git a/basis/prettyprint/prettyprint-tests.factor b/basis/prettyprint/prettyprint-tests.factor index 168632d548..1c4256bfb3 100644 --- a/basis/prettyprint/prettyprint-tests.factor +++ b/basis/prettyprint/prettyprint-tests.factor @@ -287,7 +287,7 @@ GENERIC: generic-see-test-with-f ( obj -- obj ) M: f generic-see-test-with-f ; { "USING: prettyprint.tests ;\nM: f generic-see-test-with-f ;\n" } [ - [ m: { f generic-see-test-with-f } see ] with-string-writer + [ M\\ f generic-see-test-with-f see ] with-string-writer ] unit-test PREDICATE: predicate-see-test < integer even? ; @@ -314,7 +314,7 @@ GENERIC: ended-up-ballin' ( a -- b ) M: started-out-hustlin' ended-up-ballin' ; inline { "USING: prettyprint.tests ;\nM: started-out-hustlin' ended-up-ballin' ; inline\n" } [ - [ m: { started-out-hustlin' ended-up-ballin' } see ] with-string-writer + [ M\\ started-out-hustlin' ended-up-ballin' see ] with-string-writer ] unit-test TUPLE: tuple-with-declared-slot { x integer } ; @@ -400,13 +400,13 @@ TUPLE: bob a b ; TUPLE: har a ; GENERIC: harhar ( obj -- obj ) M: maybe{ har } harhar ; -M: integer harhar m: { integer harhar } drop ; +M: integer harhar M\\ integer harhar drop ; { "USING: prettyprint.tests ; M: maybe{ har } harhar ; USING: kernel math prettyprint.tests ; -M: integer harhar m: { integer harhar } drop ;\n" +M: integer harhar M\\ integer harhar drop ;\n" } [ [ \ harhar see-methods ] with-string-writer ] unit-test diff --git a/basis/random/unix/unix.factor b/basis/random/unix/unix.factor index 3390ae2ed0..3fbdadae44 100644 --- a/basis/random/unix/unix.factor +++ b/basis/random/unix/unix.factor @@ -14,7 +14,7 @@ M: unix-random dispose reader>> dispose ; M: unix-random random-bytes* ( n tuple -- byte-array ) reader>> stream-read ; -HINTS: m: { unix-random random-bytes* } { fixnum unix-random } ; +HINTS: M\\ unix-random random-bytes* { fixnum unix-random } ; [ "/dev/random" &dispose secure-random-generator set-global diff --git a/basis/tools/annotations/annotations-tests.factor b/basis/tools/annotations/annotations-tests.factor index ff476b28ee..4779897eb8 100644 --- a/basis/tools/annotations/annotations-tests.factor +++ b/basis/tools/annotations/annotations-tests.factor @@ -47,7 +47,7 @@ GENERIC: blah-generic ( a -- b ) M: string blah-generic ; -{ } [ m: { string blah-generic } watch ] unit-test +{ } [ M\\ string blah-generic watch ] unit-test { "hi" } [ "hi" blah-generic ] unit-test diff --git a/basis/tools/crossref/crossref-tests.factor b/basis/tools/crossref/crossref-tests.factor index 8a295bd149..5a105e53fe 100644 --- a/basis/tools/crossref/crossref-tests.factor +++ b/basis/tools/crossref/crossref-tests.factor @@ -51,7 +51,7 @@ M: sequence generic-forget-test-2 = ; ] unit-test { } [ - [ m: { sequence generic-forget-test-2 } forget ] with-compilation-unit + [ M\\ sequence generic-forget-test-2 forget ] with-compilation-unit ] unit-test { f } [ diff --git a/basis/ui/traverse/traverse-tests.factor b/basis/ui/traverse/traverse-tests.factor index 33dd92622c..e98e024fb3 100644 --- a/basis/ui/traverse/traverse-tests.factor +++ b/basis/ui/traverse/traverse-tests.factor @@ -62,4 +62,4 @@ M: object (flatten-tree) , ; { 0 1 } { 2 0 1 } { { "a" "b" "c" "d" } { "e" "f" "g" } { { "h" "i" } "j" } } gadgets-in-range ] unit-test -[ m: { array children>> } forget ] with-compilation-unit +[ M\\ array children>> forget ] with-compilation-unit diff --git a/core/bootstrap/syntax.factor b/core/bootstrap/syntax.factor index fa514f099b..16dfbe6ca5 100644 --- a/core/bootstrap/syntax.factor +++ b/core/bootstrap/syntax.factor @@ -65,7 +65,7 @@ IN: bootstrap.syntax "W{" "[" "\\" - "m:" + "M\\\\" "]" "delimiter" "deprecated" diff --git a/core/classes/intersection/intersection-tests.factor b/core/classes/intersection/intersection-tests.factor index 464c11c180..fd1336eb43 100644 --- a/core/classes/intersection/intersection-tests.factor +++ b/core/classes/intersection/intersection-tests.factor @@ -18,7 +18,7 @@ M: a x drop a ; { a } [ T{ a2 } x ] unit-test { t } [ T{ a3 } c? ] unit-test -{ t } [ T{ a3 } \ x effective-method m: { c x } eq? nip ] unit-test +{ t } [ T{ a3 } \ x effective-method M\\ c x eq? nip ] unit-test { c } [ T{ a3 } x ] unit-test ! More complex case diff --git a/core/classes/tuple/tuple-tests.factor b/core/classes/tuple/tuple-tests.factor index 2f6735c472..96e5f343a7 100644 --- a/core/classes/tuple/tuple-tests.factor +++ b/core/classes/tuple/tuple-tests.factor @@ -133,9 +133,9 @@ M: forget-robustness forget-robustness-generic ; M: integer forget-robustness-generic ; [ - [ ] [ m: { forget-robustness-generic } forget ] unit-test - [ ] [ m: { forget-robustness } forget ] unit-test - [ ] [ m: { forget-robustness forget-robustness-generic } forget ] unit-test + [ ] [ M\\ forget-robustness-generic forget ] unit-test + [ ] [ M\\ forget-robustness forget ] unit-test + [ ] [ M\\ forget-robustness forget-robustness-generic forget ] unit-test ] with-compilation-unit ! rapido found this one diff --git a/core/generic/generic-docs.factor b/core/generic/generic-docs.factor index a18f41440b..dd12a9c3b4 100644 --- a/core/generic/generic-docs.factor +++ b/core/generic/generic-docs.factor @@ -49,7 +49,7 @@ $nl "Low-level method constructor:" { $subsections } "Methods may be pushed on the stack with a literal syntax:" -{ $subsections postpone: \m: } +{ $subsections postpone: \M\\ } { $see-also "see" } ; ARTICLE: "method-combination" "Custom method combination" @@ -126,10 +126,10 @@ HELP: define-generic { $description "Defines a generic word. A method combination is an object which responds to the " { $link perform-combination } " generic word." } { $contract "The method combination quotation is called each time the generic word has to be updated (for example, when a method is added), and thus must be side-effect free." } ; -HELP: \m: -{ $syntax "m: { class generic }" } +HELP: \M\\ +{ $syntax "M\\\\ class generic" } { $description "Pushes a method on the stack." } -{ $examples { $code "m: { fixnum + } see" } { $code "USING: ui.gadgets.editors ui.render ;" "m: { editor draw-gadget* } edit" } } ; +{ $examples { $code "M\\\\ fixnum + see" } { $code "USING: ui.gadgets.editors ui.render ;" "M\\\\ editor draw-gadget* edit" } } ; HELP: method { $class-description "The class of method bodies, which are words with special word properties set." } ; @@ -177,7 +177,7 @@ HELP: (call-next-method) "The " { $link postpone: call-next-method } " word parses into this word. The following are equivalent:" { $code "M: class generic call-next-method ;" - "M: class generic m: { class generic } (call-next-method) ;" + "M: class generic M\\\\ class generic (call-next-method) ;" } } ; diff --git a/core/generic/hook/hook-tests.factor b/core/generic/hook/hook-tests.factor index fd9902ec89..4dfa07344b 100644 --- a/core/generic/hook/hook-tests.factor +++ b/core/generic/hook/hook-tests.factor @@ -27,7 +27,7 @@ M: growable call-next-hooker call-next-method "growable " prepend ; ] unit-test { t } [ - { } \ nth effective-method nip m: { sequence nth } eq? + { } \ nth effective-method nip M\\ sequence nth eq? ] unit-test { t } [ diff --git a/core/generic/standard/standard-tests.factor b/core/generic/standard/standard-tests.factor index 1a8d313a86..adbb4bf4af 100644 --- a/core/generic/standard/standard-tests.factor +++ b/core/generic/standard/standard-tests.factor @@ -398,7 +398,7 @@ GENERIC: forget-test ( a -- b ) M: integer forget-test 3 + ; -{ } [ "IN: generic.standard.tests USE: math FORGET: m: { integer forget-test }" eval( -- ) ] unit-test +{ } [ "IN: generic.standard.tests USE: math FORGET: M\\ integer forget-test" eval( -- ) ] unit-test { { } } [ \ + all-dependencies-of keys [ method? ] filter @@ -412,13 +412,13 @@ GENERIC: flushable-generic ( a -- b ) flushable M: integer flushable-generic ; { t } [ \ flushable-generic flushable? ] unit-test -{ t } [ m: { integer flushable-generic } flushable? ] unit-test +{ t } [ M\\ integer flushable-generic flushable? ] unit-test GENERIC: non-flushable-generic ( a -- b ) M: integer non-flushable-generic ; flushable { f } [ \ non-flushable-generic flushable? ] unit-test -{ t } [ m: { integer non-flushable-generic } flushable? ] unit-test +{ t } [ M\\ integer non-flushable-generic flushable? ] unit-test ! method-for-object, method-for-class, effective-method GENERIC: foozul ( a -- b ) @@ -426,7 +426,7 @@ M: reversed foozul ; M: integer foozul ; M: slice foozul ; -{ } [ reversed \ foozul method-for-class m: { reversed foozul } assert= ] unit-test +{ } [ reversed \ foozul method-for-class M\\ reversed foozul assert= ] unit-test { } [ { 1 2 3 } \ foozul method-for-object M\ reversed foozul assert= ] unit-test { } [ { 1 2 3 } \ foozul effective-method M\ reversed foozul assert= drop ] unit-test diff --git a/core/syntax/syntax.factor b/core/syntax/syntax.factor index 401fcbfd7f..a5cbc45994 100644 --- a/core/syntax/syntax.factor +++ b/core/syntax/syntax.factor @@ -115,7 +115,7 @@ IN: bootstrap.syntax "postpone:" [ scan-syntax-word suffix! ] define-core-syntax "\\" [ scan-word suffix! ] define-core-syntax - "m:" [ scan-object first2 lookup-method suffix! ] define-core-syntax + "M\\\\" [ scan-object scan-object lookup-method suffix! ] 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 diff --git a/extra/benchmark/raytracer/raytracer.factor b/extra/benchmark/raytracer/raytracer.factor index 7c65f22ac9..0bef7bc041 100644 --- a/extra/benchmark/raytracer/raytracer.factor +++ b/extra/benchmark/raytracer/raytracer.factor @@ -79,7 +79,7 @@ C: sphere M: sphere intersect-scene ( hit ray sphere -- hit ) [ [ sphere-n normalize ] keep nip ] if-ray-sphere ; -HINTS: m: { sphere intersect-scene } { hit ray sphere } ; +HINTS: M\\ sphere intersect-scene { hit ray sphere } ; TUPLE: group < sphere { objs array read-only } ; @@ -92,7 +92,7 @@ TUPLE: group < sphere { objs array read-only } ; M: group intersect-scene ( hit ray group -- hit ) [ drop objs>> [ intersect-scene ] with each ] if-ray-sphere ; -HINTS: m: { group intersect-scene } { hit ray group } ; +HINTS: M\\ group intersect-scene { hit ray group } ; CONSTANT: initial-hit T{ hit f double-array{ 0.0 0.0 0.0 } 1/0. }