Undefined names, in J, are parsed as verbs.

This is because of the general case demands of recursive code. Also,
nothing else really needs forward references to currently undefined names.

Thanks,

—
Raul

On Monday, August 13, 2018, More Rice <[email protected]> wrote:

> Thank you, Jose.  That's exactly what puzzles me.  I didn't define b.  I
> was expected some error from J.
>
> If b isn't defined, how can J determine what part of speech b is in to
> execute the sentence? (I thought how verbs got executed depends on it.)
>
> thanks.
>
> b
>
> |value error: b
>
> ;: '|. .b _1'
>
> ┌──┬─┬─┬──┐
>
> │|.│.│b│_1│
>
> └──┴─┴─┴──┘
>
> |. .b _1
>
> _1
>
> On Mon, Aug 13, 2018 at 11:36 AM Jose Mario Quintana <
> [email protected]> wrote:
>
> > That is a good question because, depending on the shape of its argument,
> > the product of the determinant u .v might be independent on how v is
> > defined or even if v is defined ( ( .v) alone is an adverb if v is a
> verb),
> >
> >
> >    require
> > 3 : 0
> > fls=. Loaded_j_ -.~ getscripts_j_ y
> > if. # fls do. load fls else. empty'' end.
> > )
> >
> >    |. .require _1
> > _1
> >
> >
> > erase'v'
> >
> > 1
> >    v
> > |value error: v
> >
> >    |. .v _1
> > _1
> >
> >    |. .require _1 0 1 2 3
> > 3 2 1 0 _1
> >
> >    |. .v _1 0 1 2 3
> > 3 2 1 0 _1
> >
> >    |. .require i.2 3
> > |domain error: require
> > |       |. .require i.2 3
> >
> >    |. .v i.2 3
> > |value error: v
> > |       |. .v i.2 3
> >
> > J is very clever and this seems to be a case of a call-by-need.
> >
> >
> >
> >
> > On Mon, Aug 13, 2018 at 1:03 AM, More Rice <[email protected]> wrote:
> >
> > > Oh, sorry.  My bad - I had a typo (.b instead of b.) in those “bad
> > > instances."  Please ignore my previous email.
> > >
> > > what is .b in this context?
> > >
> > > thanks.
> > >
> > >
> > > Maurice
> > >
> > > > On Aug 13, 2018, at 12:36 AM, More Rice <[email protected]>
> wrote:
> > > >
> > > > ref: https://code.jsoftware.com/wiki/Vocabulary/Inverses
> > > >
> > > > When I do v .b _1, I was expecting to see something close to the
> table
> > > on the page.
> > > >
> > > > Things went well for most, but then, at some point, v return value
> seem
> > > to change for reason I cannot explain.
> > > >
> > > > For example, |. b. _1 gives me |. (initially), and then changed to _1
> > > after tried other sentences.  When that happens, other v (like +) gives
> > me
> > > _1 as well.  It persists across jqt restart and account logout.
> > > >
> > > >    |. .b _1
> > > > _1
> > > >
> > > > Then, after running some sentences, it may return back to normal
> again.
> > > >
> > > > Is v b. _1 stable?
> > > >
> > > > thank you.
> > > >
> > > >
> > > > Maurice
> > > >
> > > > Engine: j806/j64/darwin
> > > > Release: commercial/2017-11-06T10:20:33
> > > > Library: 8.06.09
> > > > Qt IDE: 1.6.2s/5.6.3
> > > > Platform: Darwin 64
> > > > Installer: J806 install
> > > >
> > > >
> > >
> > > ----------------------------------------------------------------------
> > > 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