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

Reply via email to