Here's a stab at this kind of organization, leaving out words for
specific areas of math. Of course these words can be organized in much
the same way.

BASICS
=. Is (Local)   =: Is (Global)
_ Negative Sign / Infinity
: Explicit / Monad-Dyad
" Rank (m"n u"n m"v u"v)
NB. Comment
_9: to 9: and _: Constant Functions


ARITHMETIC
- Negate
% Reciprocal
                        >: Increment
                        <: Decrement
+ • Plus                +: Double
- • Minus               -: Halve
* • Times               *: Square
% • Divide              %: Square Root

<. Floor • Lesser Of (Min)
>. Ceiling • Larger of (Max)

^ Exponential • Power   ^. Natural Log • Logarithm


LOGIC
= • Equal               ~: • Not-Equal
< • Less Than           <: • Less Or Equal
> • Larger Than         >: • Larger Or Equal

+. • Or                 *. • And
-. Not


LISTS
$ Shape Of • Shape      # Tally • Copy
, Ravel • Append        ,: Itemize • Laminate

{ • From
{. Head • Take          {: Tail •
}. Behead • Drop        }: Curtail •

-: • Match
|. Reverse • Rotate (Shift)

/ Insert • Table

i. Integers • Index Of
e. Raze In • Member (In)

/:~ Sort Up             \:~ Sort Down
-. • Less
~. Nub


COMPOSITIONS
^: Power (If)
~ Reflex • Passive
@ Atop                  @: At
& Bond / Compose        &: Appose
&. Under                &.: Under
[ Same • Left           ] Same • Right


STRINGS
". Do                   ": Default Format
a. Alphabet


BOXES
< Box                   > Open
; Raze • Link
;: Words

Marshall

On Fri, Mar 15, 2013 at 11:00:41PM -0400, Marshall Lochbaum wrote:
> I'll jump in here and point out that words vary massively in their
> potential to confuse. You've taken out >: <: +: -: *: %: , but these
> verbs are dead simple to remember (and, as a bonus, you can do all of
> them at once), and often make reasoning with J a lot easier. I couldn't
> teach J without using these because they are simple monadic verbs with
> easy utility. +/&.:*: is a great way to teach how &.: works.
> +/&.:(^&0.5) is not.
> 
> On the other hand there are the words--particularly conjunctions and
> adverbs--that are very difficult to figure out. You've taken out most of
> these, like /. and ;. . I think } and ,. also belong in this category. }
> is, though merely awkward in theory, actually a patchwork of corner
> cases. ,. and to a lesser extent ,: are difficult to get right, and I
> think ,. is better taught as ,"_1 in both valences. These are the words
> that really need to be taken out. Leave the technically useless but
> simple and convenient words alone.
> 
> This list looks like it's tending towards an effort to gut as many words
> as possible and make the language look small. I think a better approach
> would be to organize words into a few groups--arithmetic, logic, lists,
> compositions, and heavy mathematics--which contain a larger selection of
> useful operations and stress the symmetry of these (why would you take
> out any of {. {: }. }: when they are easy to teach in a group?). Words
> that are truly confusing and take a long time to understand (H. ,
> anyone?) would be left out.
> 
> Marshall
> 
> On Fri, Mar 15, 2013 at 08:15:29PM -0500, km wrote:
> > 
> > Here's the latest J core, using additional paring suggested by Raul.
> > 
> > I did keep }: because of puzzling things that happen if you use _1&{. 
> > instead (giving you a vector instead of a scalar).  And I took out GCD .
> > 
> > --Kip Murray
> > 
> > >>  <<  Usr  Pri  JfC  LJ  Phr  Dic  Rel  Voc  !:  Help  Dictionary
> > 
> > Vocabulary  ( Constants   Controls   Foreigns   Parts of Speech )  
> > 
> > =  • Equal  =. Is (Local)   =: Is (Global)
> > < Box • Less Than   <. Floor • Lesser Of (Min)      <:  • Less Or Equal
> > > Open • Larger Than        >. Ceiling • Larger of (Max)    >:  • Larger Or 
> > > Equal
> > _ Negative Sign / Infinity  
> > 
> >  
> > +  • Plus   
> > 
> > *  • Times  
> > 
> > - Negate • Minus    -. Not • Less   -:  • Match
> > % Reciprocal • Divide       
> > 
> >  
> > ^ Exponential • Power       
> > ^: Power (u^:n u^:v)
> > $ Shape Of • Shape  
> > 
> > ~ Reflex • Passive  ~. Nub •        ~:  • Not-Equal
> > | Magnitude • Residue       |. Reverse • Rotate (Shift)     
> >  
> > 
> > 
> > 
> > : Explicit / Monad-Dyad     
> > 
> > , Ravel • Append    ,. Ravel Items • Stitch ,: Itemize • Laminate
> > ; Raze • Link       
> > ;: Words
> >  
> > # Tally • Copy      
> > 
> > ! Factorial 
> > 
> > / Insert • Table    
> > /:  • Sort
> > \ Prefix    
> > \:  • Sort
> >  
> > [ Same • Left               [: Cap
> > ] Same • Right               
> > {  • From   {. Head • Take  {: Tail •   
> > }  • Amend (m} u})  }. Behead • Drop        
> >  
> > " Rank (m"n u"n)    ". Do •         ": Default Format • Format
> > 
> >     
> > @ Atop      @. Agenda       
> > & Bond / Compose    &. Under (Dual) 
> > ? Roll • Deal       
> >  
> > a. Alphabet a: Ace (Boxed Empty)    
> > 
> > 
> > 
> > 
> > 
> > 
> > e.  • Member (In)
> > E. • Member of Interval     
> > 
> >  
> > i. Integers • Index Of      
> > I. Indices • Interval Index
> > 
> > 
> > 
> > 
> > NB. Comment 
> > 
> > 
> > 
> >  
> >     
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > >>  <<  Usr  Pri  JfC  LJ  Phr  Dic  Rel  Voc  !:  Help  Dictionary
> > 
> > Sent from my iPad
> > 
> > 
> > On Mar 15, 2013, at 10:27 AM, Greg Borota <[email protected]> wrote:
> > > 
> > > 3) I am not the first to mention this. I wish there was a minimal J
> > > language core documented/available. I see veterans on this forum saying
> > > things like: "I almost never use some of those verbs". Is there not a
> > > minimal J language core targeting general language use? For example,
> > > leaving out specifics like numerical analysis, statistics, etc. This
> > > might help some not drop by the way side. E.g. http://xprogramming
> > > .com/category/j-language/
> > 
> > 
> > On Mar 15, 2013, at 3:26 PM, Raul Miller <[email protected]> wrote:
> > 
> > ...
> > > 
> > > I'd probably also eliminate foreigns from "core".  Foreigns are about
> > > as peripheral as you can get.  The beginner should probably be told to
> > > start with covers (fread, fwrite, ...).
> > > 
> > ----------------------------------------------------------------------
> > 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