Yeah, it's a disgusting situation.

:/

-- 
Raul

On Fri, Dec 14, 2018 at 11:11 AM 'Mike Day' via Programming
<programm...@jsoftware.com> wrote:
>
> Thank Heavens Ken and Roger avoided all those APL glyphs
>
> Mike
>
> > On 14 Dec 2018, at 16:08, Raul Miller <rauldmil...@gmail.com> wrote:
> >
> > I think this might be at least partially a font issue.
> >
> > If I am reading your current message right, I probably read 5” as 5’’
> >
> > And, in the environment I am currently working in (thank you Apple):
> >
> > (a) those two expressions look identical, and
> >
> > (b) I cannot experiment to determine if what’s in my message compose buffer
> > matches what I typed in.
> >
> > So... just in case: for the first 5” here, I used a quote character. And,
> > for the second, I used two apostrophes.
> >
> > :/
> >
> > —
> > Raul
> >
> > On Thursday, December 13, 2018, Jose Mario Quintana <
> > jose.mario.quint...@gmail.com> wrote:
> >
> >> Thanks for the references.  However, it turns out that I have been somewhat
> >> familiar with an RL shift-reduce parser.
> >>
> >> Out of curiosity, I tried to shed some ligth.  First with the trace
> >> facility,
> >>
> >>  trace'5}'
> >> --------------- 3 Adverb -----
> >> 5
> >> }
> >> 5}
> >> ==============================
> >>
> >>   trace'5"'
> >> --------------- 6 Bident -----
> >> 5
> >> "
> >> 5"
> >> ==============================
> >>
> >> It did not help me much.  Just in case, I tried the verb which started this
> >> thread,
> >>
> >>   ( S=. '(<(<,'':''),<(<(,''0'');1),<(,''0'');1 0$'''') (1 : ''u u`:6`:6
> >> y'')' )
> >> (<(<,':'),<(<(,'0');1),<(,'0');1 0$'') (1 : 'u u`:6`:6 y')
> >>
> >>   trace S
> >> --------------- 4 Conj -------
> >> 1
> >>  :
> >> 'u u`:6`:6 y'
> >> 1 : 'u u`:6`:6 y'
> >> .
> >> .
> >> .
> >>
> >> --------------- 8 Paren ------
> >> (
> >> <(<,':'),<(<(,'0');1),<(,'0');1 0$''
> >> )
> >> ┌────────────────┐
> >> │┌─┬────────────┐│
> >> ││:│┌─────┬────┐││
> >> ││ ││┌─┬─┐│┌─┬┐│││
> >> ││ │││0│1│││0│││││
> >> ││ ││└─┴─┘│└─┴┘│││
> >> ││ │└─────┴────┘││
> >> │└─┴────────────┘│
> >> └────────────────┘
> >> --------------- 3 Adverb -----
> >> <(<,':'),<(<(,'0');1),<(,'0');1 0$''
> >> 1 : 'u u`:6`:6 y'
> >> <(<,':'),<(<(,'0');1),<(,'0');1 0$'' (1 : 'u u`:6`:6 y')
> >> ==============================
> >> |syntax error: trace
> >> |       <(<,':'),<(<(,'0');1),<(,'0');1 0$''(1 :'u u`:6`:6 y')
> >>
> >> but at the crucial moment trace got bitten by the bug!  :)
> >>
> >> (It was a long shot but I aimed for an updated j808 DLL on the
> >> System/Installation/Zips page,
> >>
> >>   https://code.jsoftware.com/wiki/System/Installation/Zips
> >>
> >> but I got only broken links (which presumably they will be operating in the
> >> future).)
> >>
> >> Alright then, can Marshall's formal parser,
> >>
> >>  https://code.jsoftware.com/wiki/User:Marshall_Lochbaum/Formal_Parser
> >>
> >> help?
> >>
> >>   parse@:splitwords'5}'
> >> ┌─────────────────┐
> >> │┌─┬─────┬───────┐│
> >> ││1│┌─┬─┐│┌─────┐││
> >> ││ ││2│}│││┌─┬─┐│││
> >> ││ │└─┴─┘│││0│5││││
> >> ││ │     ││└─┴─┘│││
> >> ││ │     │└─────┘││
> >> │└─┴─────┴───────┘│
> >> └─────────────────┘
> >>   parse@:splitwords'5"'
> >> ┌──────────────────────────┐
> >> │┌─┬────────┬─────────────┐│
> >> ││1│┌─┬────┐│┌─────┬─────┐││
> >> ││ ││3│hook│││┌─┬─┐│┌─┬─┐│││
> >> ││ │└─┴────┘│││3│"│││0│5││││
> >> ││ │        ││└─┴─┘│└─┴─┘│││
> >> ││ │        │└─────┴─────┘││
> >> │└─┴────────┴─────────────┘│
> >> └──────────────────────────┘
> >>
> >> I still did not see why 5} can be considered to be reduced but 5" is not
> >> (incidentally, "bident" instead of "hook" would be a better word in this
> >> case, among other things).
> >>
> >> How about the troublesome sentence S?
> >>
> >>   parse@:splitwords S
> >>
> >> (I am skipping the output because it would look too messy in the archive;
> >> but, the resulting tree is shallow.)
> >>
> >> You mentioned the stack and a reducing the number of items in the parse
> >> representation and I finally remembered Roger Stokes' excellent Evaluation
> >> in Slow Motion (EVM),
> >>
> >>   '5}'EVM
> >> 5}
> >> ┌─┬─┐
> >> │5│}│
> >> └─┴─┘
> >>   hist''
> >>
> >> Queue        Stack               Rule
> >>
> >> ┌────────┐   ┌──────┬────┬───┐   ┌────┐
> >> │mark 5 }│   │      │    │   │   │    │
> >> ├────────┤   ├──────┼────┼───┤   ├────┤
> >> │mark 5  │   │ }    │    │   │   │    │
> >> ├────────┤   ├──────┼────┼───┤   ├────┤
> >> │mark    │   │ 5    │ }  │   │   │    │
> >> ├────────┤   ├──────┼────┼───┤   ├────┤
> >> │        │   │ mark │ 5  │ } │   │adv │
> >> ├────────┤   ├──────┼────┼───┤   ├────┤
> >> │        │   │ mark │ 5} │   │   │    │
> >> └────────┘   └──────┴────┴───┘   └────┘
> >>
> >>   '5"'EVM
> >> 5"
> >> ┌─┬─┐
> >> │5│"│
> >> └─┴─┘
> >>   hist''
> >>
> >> Queue        Stack               Rule
> >>
> >> ┌────────┐   ┌──────┬────┬───┐   ┌──────┐
> >> │mark 5 "│   │      │    │   │   │      │
> >> ├────────┤   ├──────┼────┼───┤   ├──────┤
> >> │mark 5  │   │ "    │    │   │   │      │
> >> ├────────┤   ├──────┼────┼───┤   ├──────┤
> >> │mark    │   │ 5    │ "  │   │   │      │
> >> ├────────┤   ├──────┼────┼───┤   ├──────┤
> >> │        │   │ mark │ 5  │ " │   │bident│
> >> ├────────┤   ├──────┼────┼───┤   ├──────┤
> >> │        │   │ mark │ 5" │   │   │      │
> >> └────────┘   └──────┴────┴───┘   └──────┘
> >>
> >> I must be blind, I cannot see the difference; they look eerily similar to
> >> me.  Right, the adv rule reduces the number of items in the stack; but, so
> >> does the bident rule.
> >>
> >> The bad news (for me) is that I am still in the dark.  The good news is
> >> that I can safely assume that knowing the difference is irrelevant for
> >> programming which could suggest moving any potential additional discussion
> >> on this particular topic to the chat forum.
> >>
> >> P.S.  I find the history of '(<(<,'':''),<(<(,''0'');1),<(,''0'');1
> >> 0$'''')
> >> (1 : ''u u`:6`:6 y'')'EVM quite interesting.
> >>
> >>
> >> On Wed, Dec 12, 2018 at 11:35 AM Raul Miller <rauldmil...@gmail.com>
> >> wrote:
> >>
> >>> Here's a more concise explanation:
> >>>
> >>> In http://www.jsoftware.com/help/dictionary/dicte.htm the phrase "and
> >>> eventually executing some eligible portion of the stack and replacing
> >>> it by the result of the execution" describes the same thing that
> >>> "reduce" describes what "reduce" would be in a shift-reduce parser
> >>> explanation.  Basically, that "reduce" might also be described as "a
> >>> step of evaluation".
> >>>
> >>> "Shifting", on the other hand, is taking another token (or word) from
> >>> the parsing queue - that's another kind of evaluation step, but it
> >>> doesn't reduce the number of items in the parse representation.
> >>>
> >>> But it really helps if you see it in action - it's such a simple
> >>> concept that it's slippery to think about if you never see it
> >>> happening.
> >>>
> >>> (Perhaps also worth noting that verb definitions are only extracted
> >>> from their name during J's "parser reduce" steps while other named
> >>> entities have their names extracted from their names during J's
> >>> "parser shift"? This is an important distinction because of how
> >>> locales are implemented, and it's also why undefined names are treated
> >>> like verbs in tacit definitions, That said, note that names are not
> >>> always undefined and this can be a source of confusion when using a
> >>> script with forward verb references.)
> >>>
> >>> Thanks,
> >>>
> >>> --
> >>> Raul
> >>> On Wed, Dec 12, 2018 at 11:18 AM Raul Miller <rauldmil...@gmail.com>
> >>> wrote:
> >>>>
> >>>> These look like decent explanations:
> >>>>
> >>>> http://www.cs.binghamton.edu/~zdu/parsdemo/srintro.html
> >>>>
> >>>> or, if you prefer a video presentation:
> >>>>
> >>>> https://www.youtube.com/watch?v=Ga9b_E85Lwc
> >>>>
> >>>> Mind you, the examples are for parsers left-to-right parsers
> >>>> (indicated by LR in the alphabet soup used to label the things), while
> >>>> J's parser is a right-to-left parser (which would probably be labeled
> >>>> by RL along with some other bits of alphabet soup to describe the four
> >>>> token pattern matching that it uses to decide what reduce action to
> >>>> take).
> >>>>
> >>>> Thanks,
> >>>>
> >>>> --
> >>>> Raul
> >>>>
> >>>> On Wed, Dec 12, 2018 at 10:55 AM Jose Mario Quintana
> >>>> <jose.mario.quint...@gmail.com> wrote:
> >>>>>
> >>>>> Why?  Can you elaborate?
> >>>>>
> >>>>> On Wed, Dec 12, 2018 at 10:07 AM Raul Miller <rauldmil...@gmail.com>
> >>> wrote:
> >>>>>
> >>>>>> Yes.
> >>>>>>
> >>>>>> Thanks,
> >>>>>>
> >>>>>> —
> >>>>>> Raul
> >>>>>>
> >>>>>>
> >>>>>> On Tuesday, December 11, 2018, Jose Mario Quintana <
> >>>>>> jose.mario.quint...@gmail.com> wrote:
> >>>>>>
> >>>>>>> It seems to be just academic now.  Nevertheless, does your
> >>> interpretation
> >>>>>>> imply that,
> >>>>>>>
> >>>>>>>   5"
> >>>>>>> 5"
> >>>>>>>
> >>>>>>> is not "reduced" but,
> >>>>>>>
> >>>>>>>   5}
> >>>>>>> 5}
> >>>>>>>
> >>>>>>> is "reduced" in the context of shift-reduce parsers?
> >>>>>>>
> >>>>>>>
> >>>>>>> On Mon, Dec 10, 2018 at 10:43 AM Raul Miller <
> >>> rauldmil...@gmail.com>
> >>>>>>> wrote:
> >>>>>>>
> >>>>>>>> On Fri, Dec 7, 2018 at 7:53 PM Henry Rich <
> >> henryhr...@gmail.com>
> >>>>>> wrote:
> >>>>>>>>> What Ken meant by "resolve" is not clear to me.
> >>>>>>>>
> >>>>>>>> I expect he meant what people working with shift-reduce parsers
> >>> would
> >>>>>>>> call "reduce". (But Ken would not be inclined to call it that,
> >> I
> >>>>>>>> imagine, because reduce was a similar/different well defined
> >> APL
> >>>>>>>> operation.)
> >>>>>>>>
> >>>>>>>> Thanks,
> >>>>>>>>
> >>>>>>>> --
> >>>>>>>> Raul
> >>>>>>>>
> >>> ----------------------------------------------------------------------
> >>>>>>>> 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
>
> ----------------------------------------------------------------------
> 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