Technically, you are not indexing the tines of the fork but you are indexing the result of the fork.
Thanks, -- Raul On Wed, Apr 15, 2015 at 3:09 AM, Jon Hough <[email protected]> wrote: > Yes, thanks. It seems more clear. I wasn't aware you could index tines of a > fork.e.g. > > k =: ((+/),%,#) > > > (1{k) 5 > gives 0.2 > That was the main cause of confusion. Thanks. > >> From: [email protected] >> Date: Wed, 15 Apr 2015 02:55:14 -0400 >> To: [email protected] >> Subject: Re: [Jprogramming] Verb to string and Verb array >> >> k is a single verb which produces 3 values for each element of its argument. >> >> It is also a fork, and each tine of the fork has a leaf which is a >> bond (n&v). So if you give it a left argument, that becomes a repeat >> count for those operations. >> >> There are some other properties which you can observe by inspection >> (each tine of the fork is composed of rank zero verbs, for example). >> >> Does that help? >> >> Thanks, >> >> -- >> Raul >> >> On Wed, Apr 15, 2015 at 2:34 AM, Jon Hough <[email protected]> wrote: >> > I am slightly confused with how the tie (gerund) and or the linear >> > representation are related to this: >> > >> > k =: (^@:(3&*)) d. 1 2 3 >> > >> > >> > results in : >> > >> > >> > >> > >> > ((3"0 * ^@(3&*)) , (9"0 * ^@(3&*)) , 27"0 * ^@(3&*))"0 >> > >> > >> > Which seems to be three verbs; If I do : >> > k 3 >> > >> > >> > I get : >> > >> > >> > 24309.3 72927.8 218783 >> > And I can also do: >> > >> > >> > (0{k) 3 >> > >> > >> > 24309.3 >> > >> > >> > >> > >> > So whatever k is, it returns three nouns for one input noun, and it is >> > indexable so is an array of some sort. But what exactly (in terms of >> > parts-of-speech) is k? >> > >> > >> > >> >> Date: Tue, 14 Apr 2015 18:59:52 +0200 >> >> From: [email protected] >> >> To: [email protected] >> >> Subject: Re: [Jprogramming] Verb to string and Verb array >> >> >> >> Exactly. Actually, any time you want something to work as if it were >> >> assigned to a name, you'd need brackets. >> >> Eg: *: +&. won't work, while *: (+&.) will. But this might be out of your >> >> scope, since +&. is an adverb, not a verb. >> >> >> >> 2015-04-14 17:35 GMT+02:00 Jon Hough <[email protected]>: >> >> >> >> > Thanks, >> >> > Just to be clear, '(',')',~ is just to bracketify the verb so its fork >> >> > (in this case) works, right? >> >> > >> >> > --- Original Message --- >> >> > >> >> > From: "Jan-Pieter Jacobs" <[email protected]> >> >> > Sent: April 14, 2015 5:26 PM >> >> > To: [email protected] >> >> > Subject: Re: [Jprogramming] Verb to string and Verb array >> >> > >> >> > Hey John, >> >> > >> >> > I think 1. you can do using 5!:5: >> >> > >> >> > mean =: +/%# >> >> > mean i.5 >> >> > 2 >> >> > 5!:5 <'mean' >> >> > +/ % # >> >> > datatype 5!:5 <'mean' >> >> > literal >> >> > ". (('(',')',~5!:5) <'mean'),'0 1 2 3 4' >> >> > 2 >> >> > stringify =: '(',')',~5!:5 >> >> > (stringify <'mean') , '0 1 2 3 4' >> >> > (+/ % #)0 1 2 3 4 >> >> > >> >> > For point 2, you can use gerunds to pass around verbs in a list: >> >> > >> >> > ger =: +`-`*`% >> >> > ger >> >> > ┌─┬─┬─┬─┐ >> >> > │+│-│*│%│ >> >> > └─┴─┴─┴─┘ >> >> > 10 ((1{ger) `: 0) 20 >> >> > _10 >> >> > >> >> > There's a massive amount of uses for gerunds, like / , ^: , } , and so >> >> > on... >> >> > >> >> > If you'd want to do these things (make a noun (or list there of)) out of >> >> > any type of word, I think you should be looking at atomic >> >> > representation. >> >> > >> >> > Jan-Pieter >> >> > >> >> > 2015-04-14 10:11 GMT+02:00 Jon Hough <[email protected]>: >> >> > >> >> > > I have a couple of questions: >> >> > > 1. Is it possible to convert a verb, e.g. +/%# , to a string?": >> >> > > '+/%# 2 >> >> > 3 >> >> > > 4' executes a stringed verb with an argument. But how would I >> >> > > convert a >> >> > > verb to a string in the first place? >> >> > > Also, I discovered the eval verb >> >> > > >> >> > > >> >> > > eval=: 1 : 0 >> >> > > >> >> > > ". 'w =. ' , u >> >> > > >> >> > > (ar < 'w') ab >> >> > > >> >> > > ) >> >> > > >> >> > > >> >> > > Does this have an inverse? >> >> > > >> >> > > 2. If I have two verbs (or conjunctions, adverbs for that matter), >> >> > > can I >> >> > > not pass them around in a list? >> >> > > e.g. in other languages, like C# I can put functions into a list >> >> > > (List<Action> for example). >> >> > > I searched JforC and the J website and couldn't find any way to do >> >> > > this. >> >> > > Thanks Jon >> >> > > ---------------------------------------------------------------------- >> >> > > 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
