Hi Raul,

Yes I think I understood Henry's message. This why my thought is to simulte
the keyboard input. Since typing the raw input into the first function
works exactly as desired. I want rather to substitute escaping to the
keyboard for  feeding the input as keystrokes.

I don't know enough about stdin and keyboard reads to know the different
triggers.

Are there some bytes that the keyboard triggers that
interpreter recognizes?

If the analogy is writing/reading a file, can i get the bytes of each digit
and go from there?

Is there better was for me to think about this? Probably.
But, I know that if a keyboard can do it, I can simulate a keyboard  doing
it.

I must be able to run that track without needing to escape the function.


:)

Ak



On Mon., Aug. 14, 2023, 13:30 Raul Miller, <rauldmil...@gmail.com> wrote:

> I think you should re-read Henry's message that you were responding to
> here.
>
> By the time any J function can run, it's already too late.
>
> --
> Raul
>
> On Mon, Aug 14, 2023 at 12:58 PM Ak O <akin...@gmail.com> wrote:
> >
> > What expression allows a function to recieve an argument 'y' as a literal
> > without using quotes?
> >
> > Below are two  deficient functions.
> > The size of the vector is given by 'x'. The permutation
> > index is meant to be given by 'y'.
> >
> > My intention is treat 'y' as a literal, without needing to use quotes on
> > the input.
> >
> > This first function works by escaping to the keyboard for input
> > I would like rather for the function to receive the input from the raw
> > argument and not have to escape to the keyboard.
> >
> > Desired Input
> > 30 extd 180548043269214561950911457875657
> > Rather than
> > 30 extd '180548043269214561950911457875657'
> >
> >
> > This function is deficient by its operating sequence.
> > It escapes to keyboard, which preservs the literal type.
> >
> > extd =: 4 : 0
> > n=. ((1!:1) 1
> > ((".@,&'x' n)) A. i. x
> > )
> >
> > 30 extd 180548043269214561950911457875657
> >
> > Keyboard input (if this approach makes sense, can the keyboard input  be
> > simulated by using y as the feed?)
> > 180548043269214561950911457875657
> >
> > Result
> > 20 12 4 29 7 17 22 11 2 27 28 23 6 21 9 3 24 10 26 13 15 1 18 8 25 19 0 5
> > 16 14
> >
> >
> >
> > Alternative deficient function by the input form.
> > Yields the correct result  but uses quotes in the input.
> >
> > extdquotes =: 4 : 0
> > ((".@,&'x' n)) A. i. x
> > )
> >
> > 30 extdquotes '180548043269214561950911457875657'
> >
> > Result
> > 20 12 4 29 7 17 22 11 2 27 28 23 6 21 9 3 24 10 26 13 15 1 18 8 25 19 0 5
> > 16 14
> >
> >
> > I am looking for the function that uses the input for extd that delivers
> > the result of extdquotes
> >
> >
> > Thank you for your help
> > Ak
> >
> >
> > On Sat., Aug. 12, 2023, 13:43 Henry Rich, <henryhr...@gmail.com> wrote:
> >
> > > It's like this:
> > >
> > > /long-number/ is a single word.  If the length is <19 digits, it is an
> > > integer, otherwise a float (which necessarily has only 16 digits of
> > > precision).
> > >
> > > /long-number/x is a single word, but it is always an extended integer,
> > > and every digit of /long-number/ is preserved.
> > >
> > > x: /number/ is two words.  /number/ is evaluated first, and then x: is
> > > applied to its value to give an extended integer.
> > >
> > > In that last case, if /number/ has more than 19 digits, it will have
> > > been represented as a float, and the extended integer will have only 16
> > > digits of precision.
> > >
> > > Henry Rich
> > >
> > > On 8/12/2023 3:25 PM, Ak O wrote:
> > > > My thought was that 'x' must always be  extended by definition.
> > > >
> > > > I was trying to think what cases this operator's 'x' argument would
> not
> > > be
> > > > strictly extended.
> > > >
> > > > Chris demonstrated that the input 'x' in my example is float by
> > > > construction.
> > > >
> > > > Raul explained that the  parser treats the number before it treats
> the
> > > > operator  ( if I have understood his message correctly).
> > > >
> > > > So if I have understood all of this correctly. As a raw input, it is
> the
> > > > extended representation of the float input 'x' that is actually what
> is
> > > > being operated on by A. to yield the result.
> > > >
> > > >
> > > >
> > > > Ak
> > > >
> > > >
> > > > On Sat., Aug. 12, 2023, 11:34 Henry Rich, <henryhr...@gmail.com>
> wrote:
> > > >
> > > >> I misunderstood your question.
> > > >>
> > > >> (x A. y) starts by verifying that (*./ (|x) < !.#y) and then
> converts x
> > > >> to a permutation with
> > > >> (i.@-&.<: y) #: x
> > > >> (all in extended precision if x is extended), followed by a number
> of
> > > >> rotations within an index vector.  It is much less work to start
> with
> > > >> the permutation vector rather than the anagram index.
> > > >>
> > > >> Henry Rich
> > > >>
> > > >> On 8/11/2023 8:29 PM, Ak O wrote:
> > > >>> For me,
> > > >>> (x: y)
> > > >>> does not preserve the input.
> > > >>>
> > > >>> The result I get is not the same.
> > > >>>
> > > >>>
> > > >>>             ( x:180548043269214561950911457875657 )
> > > >>>    180548043269214573494164592263168
> > > >>> This does not work.
> > > >>>
> > > >>>
> > > >>>
> > > >>>             180548043269214561950911457875657x
> > > >>> 180548043269214561950911457875657
> > > >>> This does work.
> > > >>>
> > > >>>
> > > >>>
> > > >>>
> > > >>>
> > > >>> On Fri., Aug. 11, 2023, 13:01 Henry Rich, <henryhr...@gmail.com>
> > > wrote:
> > > >>>
> > > >>>> (x: value) produces extended version of value.
> > > >>>>
> > > >>>> Henry Rich
> > > >>>>
> > > >>>> On Fri, Aug 11, 2023, 2:44 PM Ak O <akin...@gmail.com> wrote:
> > > >>>>
> > > >>>>> Hi everybody, I hope you are all well.
> > > >>>>>
> > > >>>>> I have a question about the Anagram ( A. ) operator.
> > > >>>>>
> > > >>>>> In a defined function, how do I designate that an input 'x' is
> > > >> treatment
> > > >>>>> as  extended datatype rather than float?
> > > >>>>>
> > > >>>>> Where being defined:
> > > >>>>>        13 : ' x A. i.y'
> > > >>>>> [ A. [: i. ]
> > > >>>>>
> > > >>>>>    is to be taken as,
> > > >>>>>        13 : 'X_INPUTx A. y'     NB. 12345672345467x A. i.y
> > > >>>>>
> > > >>>>> How do I get the affect of catenating an 'x' to the end of a
> number
> > > in
> > > >> a
> > > >>>>> defined function?
> > > >>>>>
> > > >>>>> If you understand my question ignore below, otherwise I give an
> > > >> example.
> > > >>>>> Thank you for your thoughts.
> > > >>>>>
> > > >>>>> Ak
> > > >>>>>
> > > >>>>>
> > > >>>>> My understanding of the Anagram operator (A.).
> > > >>>>> The vocabulary reference page (acapdot) gives the product of the
> > > >> Anagram
> > > >>>>> index function
> > > >>>>>       A. y
> > > >>>>> as datatype extended.
> > > >>>>>
> > > >>>>>
> > > >>>>> The Anagram function
> > > >>>>>       x A. y
> > > >>>>> applies the permutation map (x) on  ordered vector sequence (y)
> as
> > > >> below.
> > > >>>>>
> > > >>>>> ]    vector_sequence =:      ?~30
> > > >>>>> 20 12 4 29 7 17 22 11 2 27 28 23 6 21 9 3 24 10 26 13 15 1 18 8
> 25 19
> > > >> 0 5
> > > >>>>> 16 14
> > > >>>>>
> > > >>>>>
> > > >>>>> ]    vector_anagram =:     A. vector_sequence
> > > >>>>> 180548043269214561950911457875657
> > > >>>>>
> > > >>>>> The Noun, vector_anagram will have datatype extended, given by:
> > > >>>>>       datatype vector_anagram
> > > >>>>> extended
> > > >>>>>
> > > >>>>> Applying the vector_anagram on a vector using the command:
> > > >>>>>        vector_anagram A. i.30
> > > >>>>> 20 12 4 29 7 17 22 11 2 27 28 23 6 21 9 3 24 10 26 13 15 1 18 8
> 25 19
> > > >> 0 5
> > > >>>>> 16 14
> > > >>>>>
> > > >>>>> The expected result.
> > > >>>>>
> > > >>>>> In a case where the digits are input on there own, the following
> > > fails
> > > >>>> with
> > > >>>>> 'domain error, executing dyad A.'
> > > >>>>>
> > > >>>>>        180548043269214561950911457875657 A. i.30
> > > >>>>>
> > > >>>>> One approach is to place 'x:' before the input.
> > > >>>>>        ( x:180548043269214561950911457875657 )A. i.30
> > > >>>>> 20 12 4 29 7 17 22 11 2 27 28 25 1 8 0 15 16 14 3 5 19 26 18 6
> 21 23
> > > 13
> > > >>>> 24
> > > >>>>> 9 10
> > > >>>>>
> > > >>>>> This is not the expected result.
> > > >>>>>
> > > >>>>> The input is treated as 180548043269214573494164592263168.
> > > >>>>>
> > > >>>>>        ( x:180548043269214561950911457875657 )
> > > >>>>> 180548043269214573494164592263168
> > > >>>>>
> > > >>>>> Not the input I thought I was applying.
> > > >>>>>
> > > >>>>> An alternative is to postfix an 'x' to the end of the input.
> > > >>>>>        180548043269214561950911457875657x A. i.30
> > > >>>>> 20 12 4 29 7 17 22 11 2 27 28 23 6 21 9 3 24 10 26 13 15 1 18 8
> 25 19
> > > >> 0 5
> > > >>>>> 16 14
> > > >>>>>
> > > >>>>> The expected result. But how do I achieve this for a defined
> > > function.
> > > >>>>>
> > > >>>>> Does not work either.
> > > >>>>> ".@((":vector_anagram),x')"_     NB. same as x:
> > > >>>>>
> > > >>>>>
> > > >>>>> Maybe there is a symbol that 13 : can be recognize to trigger the
> > > >>>> extended
> > > >>>>> datatype.
> > > >>>>>
> > > >>>>>
> > > >>>>>
> > > >>>>> Thank you for your help.
> > > >>>>>
> > > >>>>> Ak
> > > >>>>>
> > > ----------------------------------------------------------------------
> > > >>>>> 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