< Though that lr bug caused the problems with f. that we both have noted in
the past.

Right, I remember; however, I think the issue reverts back to what,
officially, a gerund is, or more generally what are admissible arguments to
train (`:6), agenda (@.), and tie (`) (and their products) because if an
entity is not valid a faulty linear representation of it might not be
regarded as a bug.

On the one hand, the dictionary was ambiguous (and permissive in my mind)
on this subject but my understanding is that NuVoc is nowadays the official
documentation; thus, a gerund is "the atomic representation of a verb, or a
list thereof"  (which among other things implies that your isgerund verb
might need to be revised or renamed).  After reading the tie (`) entry is
not entirely clear to me what are valid values for n and m.  First I
thought that only atomic representations of trains of verbs were allowed,
but apparently '' is also considered valid in some instances.  Perhaps, for
example, the use of (3 ar) in,

   ((3 ar)`*`])
┌─────┬─┬─┐
│┌─┬─┐│*│]│
││0│3││ │ │
│└─┴─┘│ │ │
└─────┴─┴─┘

   ((3 ar)`*`]) (`:6)
3 * ]

is invalid because (3 ar) is not the atomic representation of a verb.  In
addition,

   + ((3 ar)`) (`(5 ar))
┌─────┬─┬─────┐
│┌─┬─┐│+│┌─┬─┐│
││0│3││ ││0│5││
│└─┴─┘│ │└─┴─┘│
└─────┴─┴─────┘

seems to be an invalid use of ties even if only because
   + ((3 ar)`) (`(5 ar)) (`:6)
8

is a noun rather than a verb.

On the other hand, there has been an effort in the past to correct similar
faulty linear representations that have been pestering some of us for many
years.  Maybe they are invalid but tolerated; several years ago I wrote the
following tacit double adverb (hg) which allows one to produce a wide class
of tacit adverbs by reducing the task of tacit adverbial programming to
tacit verbal programming.  When I wrote hg Dan and I thoutght it was kosher
but nowadays apparently it is not,

        o=. @:
c=."_
ar=. 5!:1@:<
d=. (a0=. `'') (a1=. (@:[) ((<'&')`) (`:6)) (a2=. (`(<(":0);_)) (`:6))
av=. ((ar'a0')`)  (`(ar'a1')) (`(ar'a2') ) (`:6)
  NB. Adverbing a monadic verb (adv)
  assert 1 4 9 -: 1 2 3 *: av
aw=. < o ((0;1;0)&{::)  NB. Fetching the atomic representation
d=. (a3=. (@: (aw f.)) ('av'f.)) (a4=. "_) (a5=. `:6)
a6=. ((( ar'a4') ; ] ; ( ar'a3')"_) ('av'f.)) (`:6)

NB. hg...
hg=. `((ar'a6')`(ar'a5')) (`:6)
  assert (*: 1 2 3)        -: 1 2 3      ((<'*:') ; ]   )
hg
  assert (*/ 1 2 3)        -: *          (< , ((<'/')c))
 hg 1 2 3
  assert ((*: - +/\)1 2 3) -: (*:`(+/\)) (0&{ , (<'-') , 1&{)@:(('';1)&{::)
hg 1 2 3
erase'a0 a1 a2 a3 a4 a5 a6 av aw d'

A simple application is to produce a tacit version of your ar adverb
(mildly tested),

an=.  <@:((,'0') ,&:< ])f.  NB. Atomizing words (monadic verb)
ar=. an f.hg

A shorter tacit version of ar exists but the point is that hg can produce a
tacit version of the adverb ar as well as lots of other tacit adverbs.  The
linear representations of both adverbs (hg and ar) are faulty; that is,
running on J807, I have not tried with J901.

P.S.  I merely have a mild academic interest on this matter since I neither
use J901 nor J807 for any important work.


On Thu, Feb 27, 2020 at 11:04 PM 'Pascal Jasmin' via Programming <
programm...@jsoftware.com> wrote:
>
> Henry reported (I think/thought) fixing this display (lr) bug within the
j9 cycle.
>
> Though that lr bug caused the problems with f. that we both have noted in
the past.
>
> There are 2 separate display bugs with "partial gerunds" (bound adverb
with `)
>
> ((<(,'0');3)`)  NB. not equivalent to displayed result
>
> <(,'0');3`
>
> Any other adverb "trained" with partial gerund creates a more obvious
distortion
>
>  /((<(,'0');3)`)
>
> /(3`)
>
> though it still works (internally it is not messed up as display)
>
> +(/((<(,'0');3)`))
>
> ┌─────┬───────┐
>
> │┌─┬─┐│┌─┬───┐│
>
> ││0│3│││/│┌─┐││
>
> │└─┴─┘││ ││+│││
>
> │ ││ │└─┘││
>
> │ │└─┴───┘│
>
> └─────┴───────┘
>
>
> On Thursday, February 27, 2020, 10:23:28 p.m. EST, Jose Mario Quintana <
jose.mario.quint...@gmail.com> wrote:
>
>
>
>
>
> > Seems I found a bug
>
> The question is:
>
> Is the long-standing ability of (`:6), and @.,  to handle arrays of atomic
> representations (and similar), a bug or a feature?
>
> Dan mentioned a decade ago,
>
>   No subject [!]
>   http://www.jsoftware.com/pipermail/general/2009-April/033220.html
>
> (Unfortunately, a link therein pointing to Dan's svn project with "Lots of
> scripts I've written or stolen" seems to be broken.)
>
> I have mentioned before a verb I wrote to produce, so to speak, an atomic
> representation of a sentence (as); for example,
>
>   as'3 + 5'
> ┌───────┬─┬───────┐
> │┌─────┐│+│┌─────┐│
> ││┌─┬─┐││ ││┌─┬─┐││
> │││0│3│││ │││0│5│││
> ││└─┴─┘││ ││└─┴─┘││
> │└─────┘│ │└─────┘│
> └───────┴─┴───────┘
> is similar to,
>
>   (+ ((3 ar)`) (`(5 ar)))
> ┌─────┬─┬─────┐
> │┌─┬─┐│+│┌─┬─┐│
> ││0│3││ ││0│5││
> │└─┴─┘│ │└─┴─┘│
> └─────┴─┴─────┘
>
> since
>
>   (as'3 + 5') (`:6)
> 8
>
> One can produce more complicated (as)'s; for instance,
>   as'(3 + 5) * 2'
> ┌───────────────────┬─┬───────┐
> │┌───────┬─┬───────┐│*│┌─────┐│
> ││┌─────┐│+│┌─────┐││ ││┌─┬─┐││
> │││┌─┬─┐││ ││┌─┬─┐│││ │││0│2│││
> ││││0│3│││ │││0│5││││ ││└─┴─┘││
> │││└─┴─┘││ ││└─┴─┘│││ │└─────┘│
> ││└─────┘│ │└─────┘││ │      │
> │└───────┴─┴───────┘│ │      │
> └───────────────────┴─┴───────┘
>
>   (as'(3 + 5) * 2') (`:6)
> 16
>
> or,
>   as'("1)(@:(>@:{))'
> ┌───────────┬─────────────┐
> │┌─┬───────┐│┌──┬────────┐│
> ││"│┌─────┐│││@:│┌─┬──┬─┐││
> ││ ││┌─┬─┐││││  ││>│@:│{│││
> ││ │││0│1│││││  │└─┴──┴─┘││
> ││ ││└─┴─┘│││└──┴────────┘│
> ││ │└─────┘││            │
> │└─┴───────┘│            │
> └───────────┴─────────────┘
>
>   (as'("1)(@:(>@:{))') (`:6)
> ("1)(@:(>@:{))
> ┌─────┬─────────────┐
> │┌─┬─┐│┌──┬────────┐│
> ││"│1│││@:│┌─┬──┬─┐││
> │└─┴─┘││  ││>│@:│{│││
> │    ││  │└─┴──┴─┘││
> │    │└──┴────────┘│
> └─────┴─────────────┘
>
> If it is regarded as a bug rather than a feature, then adverbial tacit
> programming (orthodox or otherwise) would be severely limited (then again,
> that seems to be the trend).
>
> On Thu, Feb 27, 2020 at 12:51 PM 'Pascal Jasmin' via Programming <
> programm...@jsoftware.com> wrote:
> >
> > Seems I found a bug, though the following approach still works, and has
> the best performance
> >
> > ar =: 1 : '5!:1 <''u'''
> >
> > the bug is:
> >
> >  ((3 ar)`) (`(5 ar)) (`:6)
> >
> > ((3`)(`5))(`:6)  NB. not valid gerunds, though magically the following
> still works
> >
> > + ((3 ar)`) (`(5 ar)) (`:6)
> > 8
> >
> > +  A=: (((3 ar)`) (`(5 ar)) (`:6))  NB. separate lines still work
despite
> "invalid return"
> >
> > 8
> >
> > though the following fails,
> >
> > + ((3`)(`5))(`:6)
> >
> > |domain error
> >
> > representation is supposed to be,
> >
> > + ((3 ar)`) (`(5 ar))
> >
> > ┌─────┬─┬─────┐
> >
> > │┌─┬─┐│+│┌─┬─┐│
> >
> > ││0│3││ ││0│5││
> >
> > │└─┴─┘│ │└─┴─┘│
> >
> > └─────┴─┴─────┘
> >
> >
> > An incompatible change that would seem very welcome to me, would be that
> >
> > noun ` noun
> >
> > instead of creating a list from the 2 nouns (pair) if they are magically
> compatible, would create a pair of atomic representations of each noun.
> >
> > Because the above code works, it appears as though just "visual sugar"
is
> provided for display.  The proposed incompatible change would make the
> visual sugar valid code, which is consistent (other than this) within J.
> >
> > On Thursday, February 27, 2020, 11:33:59 a.m. EST, Raul Miller <
> rauldmil...@gmail.com> wrote:
> >
> >
> >
> >
> >
> > Or, more robust:
> >
> > C=:2 :0
> >  mRep=. 5!:5<'m'
> >  mVn=. m V n
> >  mVnRep=. 5!:5<'mVn'
> >  1 :('(',mRep,') u~ ',mVnRep)
> > )
> >
> > Example use:
> >
> >  V=:+
> >  ,. 10 C (i.2 3)
> > 10 11 12 10
> > 13 14 15 10
> >
> > (The issue here is that 5!:5 is better than ": when serializing nouns
> > for use in sentences.)
> >
> > Perhaps even better, though, would be to define a verb to serialize
> > nouns and use that in place of ":
> >
> > lrep=:3 :0
> >  '(',(5!:5<'y'),')'
> > )
> >
> > C=:2 :0
> >  1 :((lrep m),'u~',lrep m V n)
> > )
> >
> > Thanks,
> >
> > --
> > Raul
> >
> > On Thu, Feb 27, 2020 at 6:48 AM 'Pascal Jasmin' via Programming
> > <programm...@jsoftware.com> wrote:
> > >
> > > C =: 2 : 0
> > > 1 : ((": m) , ' u~ ' , ": m V n)
> > > )
> > >
> > >
> > >
> > >
> > >
> > >
> > > On Thursday, February 27, 2020, 03:04:57 a.m. EST, Hauke Rehr <
> hauke.r...@uni-jena.de> wrote:
> > >
> > >
> > >
> > >
> > >
> > > What I want is rather something (C here) callable like
> > > noun1 C noun2
> > > resulting in the adverb
> > > noun1 u~ <result of noun1 V noun2>
> > >
> > > What you say I knew except if the evaluation
> > > rules changed in j9 and this is new bahaviour.
> > >
> > > That said, I got rid of my nested 1 :/2 :
> > > construct (I didn’t mention that yet)
> > > and tried replacing m and n by x and y
> > > but to no avail.
> > >
> > > Am 27.02.20 um 01:37 schrieb 'Pascal Jasmin' via Programming:
> > > > u or m will be the argument to A.  x and y arguments to resulting
> verb.
> > > >
> > > > it sounds as though you may be trying to do
> > > >
> > > > A =: 1 : 'x u~ x V y'  NB. a valid dyadic adverb in j9
> > > >
> > > > and this would be equivalent to
> > > >
> > > > ([ u~ V)
> > > >
> > > >
> > > >
> > > >
> > > > On Wednesday, February 26, 2020, 06:20:45 p.m. EST, Hauke Rehr <
> hauke.r...@uni-jena.de> wrote:
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > Hello again,
> > > >
> > > > I’m still confused about modifiers.
> > > > Please tell me where to find more information
> > > > that might aid in understanding how this works:
> > > >
> > > > I have an adverb A and a verb V but sometimes
> > > > x and y for the derived verb for A are known
> > > > prior to the verb, so I want to write a modifier
> > > > something like this:
> > > >
> > > > m (u A)~ m V n
> > > >
> > > > I get a domain error which afaik is due to both
> > > > m and u being bound to the left noun.
> > > > So how would one go about this and where to find
> > > > further information on constructions like this?
> > > >
> > >
> > > --
> > > ----------------------
> > > mail written using NEO
> > > neo-layout.org
> > >
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
>
> >
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> 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