Thanks, Roger. Kip Sent from my iPad
On Feb 2, 2013, at 10:14 AM, Roger Hui <[email protected]> wrote: > See *Programming Style in APL <http://www.jsoftware.com/papers/APLStyle.htm> , > *by Ken Iverson in 1978. > > > On Sat, Feb 2, 2013 at 6:15 AM, km <[email protected]> wrote: > >> Consider comparing the writing of J to the writing of English. What would >> be in your "Strunk and White" for the writing of J? >> >> (The Elements of Style by William Strunk, Jr and E B White is a "writing" >> book. Famously brief, it discusses rules for writing correctly and well.) >> >> Kip >> >> Sent from my iPad >> >> >> On Feb 2, 2013, at 7:38 AM, Raul Miller <[email protected]> wrote: >> >>> While I am comparing the learning of J to the learning of english: >>> >>> Do we have grammar school students learn english by asking them to >>> only use [insert grammatical structure here]? Why or why not? >>> >>> If so, how well does that work? >>> >>> If not, what do we do instead? >>> >>> Thanks, >>> >>> -- >>> Raul >>> >>> On Sat, Feb 2, 2013 at 2:13 AM, Linda Alvord <[email protected]> >> wrote: >>>> Also, this has only forks: >>>> >>>> >>>> >>>> 5!:4 <'t1' >>>> >>>> ┌─ 2 >>>> ┌───┼─ {. >>>> │ └─ [ >>>> ├─ $ >>>> │ ┌─ [: >>>> ──┤ ┌────┼─ ; >>>> │ │ └─ ] >>>> │ ├─ /: >>>> └───┤ ┌─ [: >>>> │ ├─ ; >>>> └────┤ ┌─ [: >>>> │ ├─ /. ─── < >>>> └────┤ >>>> │ ┌─ [: >>>> └──────┼─ i. >>>> └─ [ >>>> >>>> >>>> >>>> This has both forks and hooks: >>>> >>>> >>>> >>>> 5!:4 <'t2' >>>> >>>> ┌─ 2 >>>> ┌───┼─ {. >>>> │ └─ [ >>>> ├─ $ >>>> ──┤ ┌─ ] >>>> │ │ ┌─ /: >>>> │ ├─ & ─┴─ ; >>>> └───┤ >>>> │ ┌─ [: >>>> │ ├─ /. ─── < >>>> └─────┤ >>>> │ ┌─ [: >>>> └──────┼─ i. >>>> └─ [ >>>> >>>> >>>> >>>> Linda >>>> >>>> >>>> >>>> -----Original Message----- >>>> From: [email protected] [mailto:programming- >>>> [email protected]] On Behalf Of Linda Alvord >>>> Sent: Saturday, February 02, 2013 2:00 AM >>>> To: [email protected] >>>> Subject: Re: [Jprogramming] inverse oblique >>>> >>>> >>>> >>>> I remember fondly how Ken loved to read the unabridged dictionary. >> Richness >>>> of the language and the derivations of the words was a joyous experience >>>> for him. The J language has this same richness. >>>> >>>> >>>> >>>> For students coming to the language with years of mathematical >> background >>>> in abstract algebra, calculus, differential equations and the like, they >>>> are ready t o jump easily to abstract combinations. >>>> >>>> >>>> >>>> I keep thinking in terms of the long time it takes high school students >> to >>>> master functional notation like f(x) and g(x). >>>> >>>> >>>> >>>> >>>> >>>> To get from t1 to t2 requires and "idiom" x u&v y ↔ (v x) u (v y) >>>> >>>> >>>> >>>> t1=: 13 :'(2{.x)$(;y)/:;</.i.x' >>>> >>>> t2=: 13 :'(2{.x)$y/:&;</.i.x' >>>> >>>> >>>> >>>> So although t1 is longer than t2, t2 is more condensed and compex. >> This >>>> is why I say easier: >>>> >>>> >>>> >>>> t1 >>>> >>>> (2 {. [) $ ([: ; ]) /: [: ; [: </. [: i. [ >>>> >>>> t2 >>>> >>>> (2 {. [) $ ] /:&; [: </. [: i. [ >>>> >>>> >>>> >>>> The condensed spacing of /:&; gives away the increased complexity of >> the >>>> second tacit version. >>>> >>>> >>>> >>>> My guess is that you would spend less time reading the dictionary to >> master >>>> >>>> t1 than t2. >>>> >>>> >>>> >>>> Linda >>>> >>>> >>>> >>>> -----Original Message----- wo >>>> >>>> From: <mailto:[email protected]> programming- >>>> [email protected] [mailto:programming- >>>> <mailto:[email protected]> [email protected]] On >>>> Behalf Of Raul Miller >>>> >>>> Sent: Friday, February 01, 2013 9:20 AM >>>> >>>> To: <mailto:[email protected]> [email protected] >>>> >>>> Subject: Re: [Jprogramming] inverse oblique >>>> >>>> >>>> >>>> How do you define "easier"? >>>> >>>> >>>> >>>> In my opinion, it's easier to go from simple (fewer tokens) to complex >>>> (more tokens), but also someone has to write the code to do the >>>> transformation and until that's been done even this concept of "easier" >> can >>>> be indistinguishable from "can't be done". >>>> >>>> >>>> >>>> -- >>>> >>>> Raul >>>> >>>> >>>> >>>> On Fri, Feb 1, 2013 at 5:05 AM, Linda Alvord < >>>> <mailto:[email protected]> [email protected]> >>>> >>>> wrote: >>>> >>>>> If t1 is easy tacit and t2 is advanced tacit, wouldn't it be easier >>>> >>>>> for J to figure t2 from t1 than it is for me? >>>> >>>> >>>>> t=: 5 7 2 ?@$ 1e6 >>>> >>>>> s=: $t >>>> >>>>> x=: </.t >>>> >>>>> t1=: 13 :'(2{.x)$(;y)/:;</.i.x' >>>> >>>>> t-:s f x >>>> >>>>> 1 >>>> >>>>> t2=: 13 :'(2{.x)$y/:&;</.i.x' >>>> >>>>> t-:s g x >>>> >>>>> 1 >>>> >>>>> t1 >>>> >>>>> (2 {. [) $ ([: ; ]) /: [: ; [: </. [: i. [ >>>> >>>>> t2 >>>> >>>>> (2 {. [) $ ] /:&; [: </. [: i. [ >>>> >>>> >>>>> Or is that just wishful thinking? >>>> >>>> >>>>> Linda >>>> >>>> >>>> >>>>> -----Original Message----- >>>> >>>>> From: <mailto:[email protected]> programming- >>>> [email protected] >>>> >>>>> [ <mailto:[email protected]> mailto: >> programming- >>>> [email protected]] On Behalf Of Roger >>>> >>>>> Hui >>>> >>>>> Sent: Thursday, January 31, 2013 1:49 PM >>>> >>>>> To: Programming forum >>>> >>>>> Subject: Re: [Jprogramming] inverse oblique >>>> >>>> >>>>> t -: (2{.s) $ x /:&; </.i.s >>>> >>>>> 1 >>>> >>>> >>>> >>>> >>>>> On Thu, Jan 31, 2013 at 10:47 AM, Roger Hui >>>> >>>>> < <mailto:[email protected]> [email protected]>wrote: >>>> >>>> >>>>>> t=: 5 7 2 ?@$ 1e6 >>>> >>>>>> s=: $t >>>> >>>>>> x=: </.t >>>> >>>> >>>>>> t -: (2{.s) $ (;x)/:;</.i.s >>>> >>>>>> 1 >>>> >>>> >>>> >>>> >>>>>> On Thu, Jan 31, 2013 at 10:28 AM, Raul Miller >>>> >>>>> < <mailto:[email protected]> [email protected]>wrote: >>>> >>>> >>>>>>> Let's start with an arbitrary array: >>>> >>>> >>>>>>> A=: i. 2 3 >>>> >>>> >>>>>>> We can box oblique lines from this array: >>>> >>>> >>>>>>> </. A >>>> >>>>>>> +-+---+---+-+ >>>> >>>>>>> |0|1 3|2 4|5| >>>> >>>>>>> +-+---+---+-+ >>>> >>>> >>>>>>> However, the interpreter does not currently provide us with an >>>> >>>>>>> inverse for this operation: >>>> >>>> >>>>>>> </.inv </. A >>>> >>>>>>> |domain error >>>> >>>> >>>>>>> One problem is that you cannot uniquely determine the first two >>>> >>>>>>> elements of the shape of the original array by inspecting </.'s >>>> >>>>>>> result: >>>> >>>> >>>>>>> (</. 5 7$0) -: </.7 5$0 >>>> >>>>>>> 1 >>>> >>>> >>>>>>> If its shape is provided, how might we reconstruct the original >> array? >>>> >>>> >>>>>>> [For the sake of simple code, it's ok to focus on numeric, rank 2 >>>> >>>>>>> arrays.] >>>> >>>> >>>>>>> -- >>>> >>>>>>> Raul >>>> >>>>>>> -------------------------------------------------------------------- >>>> >>>>>>> - >>>> >>>>>>> - For information about J forums see >>>> >>>>>>> <http://www.jsoftware.com/forums.htm> >>>> http://www.jsoftware.com/forums.htm >>>> >>>> >>>> >>>> >>>>> ---------------------------------------------------------------------- >>>> >>>>> For information about J forums see < >> http://www.jsoftware.com/forums.htm> >>>> http://www.jsoftware.com/forums.htm >>>> >>>> >>>>> ---------------------------------------------------------------------- >>>> >>>>> For information about J forums see < >> http://www.jsoftware.com/forums.htm> >>>> http://www.jsoftware.com/forums.htm >>>> >>>> ---------------------------------------------------------------------- >>>> >>>> For information about J forums see < >> http://www.jsoftware.com/forums.htm> >>>> http://www.jsoftware.com/forums.htm >>>> >>>> >>>> >>>> ---------------------------------------------------------------------- >>>> >>>> For information about J forums see < >> http://www.jsoftware.com/forums.htm> >>>> 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
