I am afraid it is the superbug that has been discovered and rediscovered a
few times; see [0, 1, 2 and 3].


References

[0] [Jprogramming] Table of Verbs, Jose Mario Quintana
    http://www.jsoftware.com/pipermail/programming/2013-April/032358.html

[1] [Jprogramming] tacit adverb, Dan Bron
    http://www.jsoftware.com/pipermail/programming/2012-February/027341.html

[2] [Jgeneral] Looks like a bug in "., Dan Bron
    http://www.jsoftware.com/pipermail/general/2009-August/033231.html


On Tue, Jan 3, 2017 at 10:12 AM, 'Pascal Jasmin' via Programming <
[email protected]> wrote:

> This file works j804 and j805, when copied and run with F8, you may need
> to fix newlines
>
>
>
>
> NB.---------------------------------------------------------
> -------------------
> NB. Wicked Tacit Toolkit...
> NB.---------------------------------------------------------
> -------------------
>
> NB. Load it using 0!:0 or similar or
> NB. paste it on an J editing window and use Crtl-A Crtl-E or
> NB. of course, load it using a hot key (or replace '=.' by '=:' if you
> must)
>
> NB. A word is a noun, verb, adverb or conjunction
>
>
> (_ o=. @:) (c=. "_) (e=. &.>) (x=. @:[) (y=. @])
>
> an=.  <@:((,'0') ,&< ])          NB. Atomizing words (monadic verb)
>
> Cloak=. (0:`)(,^:)               NB. Cloaking (the atomic representaions
> of)
> NB. adverbs or conjunctions as monadic or
> NB. dyadic verbs (adv)
> Cloak=. ((5!:1)@:<'Cloak')Cloak  NB. Cloak verbing itself! (monadic ver)
>
> 'amper at evoke fix rank tie'=. Cloak o < e o ;: '& @: `: f. " `'
> NB. Verbing some adverbs and conjunctions
>
> train=. (evoke&6) :. an f.       NB. (`:6) with a convinient obverse
> NB. (monadic verb)
> box=. (< o train "0) f.          NB. Boxing primitives and pro-words
> NB. (monadic verb)
>
> af=. an o fix
>
> (a0=. `'') (a1=. (@:[) ((<'&')`) (`:6)) (a2=. (`(<(":0);_)) (`:6))
> av=. ((af'a0')`)  (`(af'a1')) (`(af'a2') ) (`:6)
> NB. Adverbing a monadic verb (adv)
> assert 1 4 9 -: 1 2 3 *: adv
>
> aw=. < o ((0;1;0)&{::)  NB. Fetching the atomic representation
>
> u (a3=. (o (train o aw f.)) ('av'f.)) (a4=. "_)
>
> adv=. train o ((af'a4') ; ] ; (af'a3')"_) f.av
> assert 1 4 9 -: 1 2 3      *:                                adv
> assert 6     -: *          (,^:(0:`(<'/')))                  adv 1 2 3
> assert 0 1 3 -: (*:`(+/\)) (train f. o (0&{ , (<'-') , 1&{)) adv 1 2 3
>
> a3=. (o (aw f.)) ('av'f.)
>
> Adv=. (train f. @:) (train o ((af'a4') ; ] ; (af'a3')"_) f.av)
> assert 1 4 9 -: 1 2 3      ((<'*:') ; ]   )                   Adv
> assert 6     -: *          (< , ((<'/')"_))                   Adv 1 2 3
> assert 0 1 3 -: (*:`(+/\)) (0&{ , (<'-') , 1&{)@:(('';1)&{::) Adv 1 2 3
>
> Ver=. Cloak o af f. NB. Verbing after fixing a pro-adverb or
> pro-conjunction
> NB. (monadic verb)
> ver=. Cloak o an f. NB. Verbing after fixing an adverb or conjunction
> NB. (monadic verb)
>
> NB. Defining cv in terms of itself...
> cv=. ((rank&_) o < o train)f.adv (>@:)     NB. First version
> cv=. (train f. cv at (<x rank _ c)) f.adv  NB. Constant verb
> u ( cv=. (  >cv at (<x rank _ c)) f.adv )
> NB. Constant word (adv)
> NB. (cv is to words as c is to nouns)
> assert (CRLF cv _) -: CRLF
> assert (u   cv _) <adv -: u   <adv
> assert (!@# cv _) <adv -: !@# <adv
> assert (< o ((Ver'cv') o train <'/') _) -: ( < o train (<'/'))
> assert (< o ((Ver'cv') o train <'"') _) -: ( < o train (<'"'))
>
>
> NB. Fetch and From...
> pointers=. (<: o - o i.)`i. @.(0<])
>
> Fetch=. (] amper {:: cv)e o pointers f.adv  NB. Verbs mnemonics pointers
> NB. (e.g., ( 'u0 u1 u2 u3'=. 4 Fetch ) j ( 'v0 v1 v2 v3'=. _4 Fetch ) )
>
> assert (< o train  3 Fetch) -: ( 0&({::)  1&({::)  2&({::)) (< adv)
> assert (< o train _3 Fetch) -: (_3&({::) _2&({::) _1&({::)) (< adv)
>
> From=.  (] amper {   cv)e o pointers f.adv  NB. Verbs mnemonics pointers
> NB. From=.  (] ([ amper train y)(({  `'')c))e o i. f. adv
> NB. (e.g., ( 'u0 u1 u2 u3'=. 4 From ) j ( 'v0 v1 v2 v3'=. _4 From ) )
>
> assert (< o train  3 From ) -: ( 0&{      1&{      2&{     ) (<adv)
> assert (< o train _3 From ) -: (_3&{     _2&{     _1&{     ) (<adv)
>
> Left=.  (at [cv)e f.adv
> Right=. (at ]cv)e f.adv
>
> mRS=. (`'') (<&.:train f.av) (`,)(`])            (`:6) (train f. @:
> )(&:(an f.))
> NB. Monadic recursion scope
> assert    (1 + (1:`(* $:@<:)@.*)         mRS  4) -: 25  NB. Factorial fixed
> dRS=. (`'') (<&.:train f.av) (`,) (`]) (,`) ([`) (`:6) (train f. @:
> )(&:(an f.))
> NB. Dyadic recursion scope
> assert (3 (1 + (1:`(%~ * $:&:<:)@.(*@:[))dRS) 7) -: 36  NB. Binomial fixed
>
>
> mRS is properly assigned and works as intended from file,
>
>
> mRS
> ((((((`'')(((`'')(&(<&.:(,^:(0:``:)&6 :.(<@:((,'0') ,&<
> ])))@:[)))((`_)(`:6))))(`,))(`]))(`:6))(,^:(0:``:)&6 :.(<@:((,'0') ,&<
> ]))@:))(&:(<@:((,'0') ,&< ])))
>
> but trying to to assign it to this linear representation produces a syntax
> error
>
> mRS =: ((((((`'')(((`'')(&(<&.:(,^:(0:``:)&6 :.(<@:((,'0') ,&<
> ])))@:[)))((`_)(`:6))))(`,))(`]))(`:6))(,^:(0:``:)&6 :.(<@:((,'0') ,&<
> ]))@:))(&:(<@:((,'0') ,&< ])))
> |syntax error
>
>
>
> is this a bug in linear representation? is it directly assignable?
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to