...sorry, that should have been: https://www.google.co.uk/search?q=site:jsoftware.com+stdlib (but the other google link was worthwhile too.)
On Tue, Jan 21, 2014 at 8:11 PM, Ian Clark <earthspo...@gmail.com> wrote: > The J Dictionary says: "It is convenient to supplement the *primitives*or > *primaries* provided in a language by *secondaries* whose names belong to > an easily recognized class." > http://www.jsoftware.com/help/dictionary/intro28.htm > > I've always understood words you can rely on being there without the need > for "require", like: load, open, each, exit, edit, (...sorry, not edit!!) > as being members of this wonderful class of *secondaries*. > > But how "easily recognised" is this class? How stable? Why isn't it as > painstakingly documented as the *primaries*? > > I suggest it's partly because we don't agree what commonly used J words to > include in the canon of secondaries. And we don't know we don't agree. Is > it the contents of stdlib.ijs (which does in fact contain exit)? Or should > we include strings.ijs too? > > stdlib is in fact "officially" documented here: > http://www.jsoftware.com/user/script_stdlib.htm > It proclaims itself as the "standard library", but you could be forgiven > for overlooking it or mistaking its importance. I only ever discovered it > by searching the site using: > https://www.google.co.uk/search?q=site:jsoftware.com+secondaries > > If we were to make the conscious decision that J is to be kept the > jealously guarded secret of a fraternity of super-smart guys, then we > should carry on exactly as we are doing now. > > If not, then we shouldn't. > > > On Tue, Jan 21, 2014 at 7:32 PM, Devon McCormick <devon...@gmail.com>wrote: > >> The language R starts up with some messages including this: >> >> Type 'demo()' for some demos, 'help()' for on-line help, or >> 'help.start()' for an HTML browser interface to help. >> Type 'q()' to quit R. >> >> >> >> On Tue, Jan 21, 2014 at 2:11 PM, Joe Bogner <joebog...@gmail.com> wrote: >> >> > Another solution is to enhance the experience of jconsole. I get a >> > blank screen that is ready for input when I start it up. >> > >> > if the repl had a bit of introductory language and a built-in help >> > system to show the z_locale for example >> > >> > Something like: >> > >> > jconsole - version x - type help'' for help >> > >> > > help'' >> > >> > The base locale is z. Enter names_z_ 3 to get a list of standard verbs >> > (functions) or names_z_ '' to see all standard names. Enter the name >> > to see the definition. Verbs are either monadic (one parameter) or >> > dyadic (two parameters). A monadic verb takes the argument on the >> > right. A dyadic verb takes the argument on the left and right. >> > Example: exit'' >> > >> > >> > Of course even "names_z_ 3" may seem odd to an absolute newbie. >> > >> > It's all very powerful, just not very obvious. Perhaps the repl can >> > have special handling for help or ? or something so a person doesn't >> > need to deal with the blank parameter. >> > >> > Compared to some other REPLs. >> > >> > Kona - does a really nice job and seems to take the approach of having >> > nearly all the documentation inside the repl (little is available >> > online). I don't need to leave the environment to get help. >> > >> > joebo@joebo:~/dev/kona$ ./k >> > K Console - Enter \ for help >> > >> > > \ >> > >> > Backslash Commands: >> > \0 datatypes help >> > \+ verb help >> > \' adverb help >> > \: I/O verb help >> > \_ reserved word help >> > \. assignment/amend, function, control flow help >> > \d [todo] directory command (todo) >> > \l f load script f or f.k >> > \p [n] show/set print precision (0=full) >> > \r [s] show/set random seed >> > \s f step script f or f.k >> > \t [e] measure runtime of some k expression >> > \w show workspace resources used >> > \[cmd] system command (also \[ cmd]), \echo hello >> > \\ exit (or ctrl+d) >> > >> > > \0 >> > >> > Datatypes -4 -3 -2 -1 0 1 2 3 4 5 6 7 >> > Monadic 4: reveals type, 4:1 2 3 yields -1 >> > -4 vector symbol `a`b`c or ,`a >> > -3 vector character "abc" or ,"c" >> > -2 vector float 1.0 2.0 3.33 or ,1.0 >> > -1 vector integer 1 2 3 or ,1 >> > 0 list general (`a;1 2 3) or (`a;(1 2 3;(3 4;"c"))) >> > 1 scalar integer 1 >> > 2 scalar float 1.0 >> > 3 scalar character "c" >> > 4 scalar symbol `s >> > 5 dictionary .((`a;10;);(`b;20;)) or .() or .,(`a;5;) >> > 6 nil _n or (;;) (list of 3 nils) >> > 7 verbs/functions + +: {1+x} +[1;] (|+) {[a;b]1+a+b} {x+y}[1;] >> > Empty Lists: >> > -4 0#` >> > -3 "" >> > -2 0#0.0 >> > -1 !0 >> > 0 () >> > Special numeric types: >> > 0N null integer >> > 0n null float >> > -0I infinity integer negative >> > 0I infinity integer positive >> > -0i infinity float negative >> > 0i infinity float positive >> > Dictionaries: >> > Start by making a dictionary d[`k]:4 >> > >> > >> > > \+ >> > >> > Dyadic or monadic is determined from context, default is dyadic >> > Add : after a verb to force the monadic form, + is plus, +: is flip >> > + monadic flip. transpose a matrix (a depth-2 list) >> > + dyadic plus. add numbers together >> > - monadic negate. invert sign >> > - dyadic minus. subtraction >> > * monadic first. first element from the list >> > * dyadic times. multiply two numbers >> > % monadic reciprocal. 1 over x >> > >> > >> > Or ipython >> > >> > C:\Python27>python Scripts\ipython >> > Python 2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 32 bit >> (Intel)] >> > Type "copyright", "credits" or "license" for more information. >> > >> > IPython 1.0.0 -- An enhanced Interactive Python. >> > ? -> Introduction and overview of IPython's features. >> > %quickref -> Quick reference. >> > help -> Python's own help system. >> > object? -> Details about 'object', use 'object??' for extra details. >> > >> > >> > In [4]: dir() >> > Out[4]: >> > ['In', >> > 'Out', >> > '_', >> > '__', >> > '___', >> > '__builtin__', >> > '__builtins__', >> > '__doc__', >> > '__name__', >> > '_dh', >> > '_i', >> > '_i1', >> > '_i2', >> > '_i3', >> > '_i4', >> > '_ih', >> > '_ii', >> > '_iii', >> > '_oh', >> > '_sh', >> > 'exit', >> > 'get_ipython', >> > 'help', >> > 'quit'] >> > >> > >> > Haskell: >> > >> > GHCi, version 7.6.3: http://www.haskell.org/ghc/ :? for help >> > Loading package ghc-prim ... linking ... done. >> > Loading package integer-gmp ... linking ... done. >> > Loading package base ... linking ... done. >> > Prelude> :? >> > Commands available from the prompt: >> > >> > <statement> evaluate/run <statement> >> > : repeat last command >> > :{\n ..lines.. \n:}\n multiline command >> > :add [*]<module> ... add module(s) to the current target set >> > :browse[!] [[*]<mod>] display the names defined by module <mod> >> > >> > >> > On Tue, Jan 21, 2014 at 12:22 PM, Murray Eisenberg >> > <mur...@math.umass.edu> wrote: >> > > And just how is one supposed to discover the existence of “exit"? >> > > >> > > There’s a broader issue here: on the one hand, the disjointedness of >> the >> > standard J documentation into General Info, Release Highlights, >> Vocabulary, >> > User, Primer, etc.; and on the other hand, the lack of a search across >> the >> > local documentation. (At least so far as I can find.) >> > > >> > > Find in Files is of no use for “exit”, since as I recall most or all >> > stuff in the z locale is now coded at a low level rather than in a J >> script. >> > > >> > > An on-line search at www.jsoftware.com and even in jwiki doesn’t seem >> > to reveal the existence of “exit”, either. >> > > >> > > Of course even if there were such a productive search available, it >> > wouldn’t help if you didn’t know that “exit” is what you should search >> for. >> > > >> > > So I’ll second Blake McBride’s suggestion of a “comprehensive >> dictionary >> > of pre-defined verbs”. >> > > >> > > >> > > At Mon, 20 Jan 2014 12:06:30 -0700, Don Guinn <dongu...@gmail.com> >> > wrote: >> > > >> > >> exit is already defined in the z locale. >> > >> >> > >> >> > >> On Mon, Jan 20, 2014 at 11:31 AM, Devon McCormick < >> devon...@gmail.com >> > >wrote: >> > >> >> > >>> This is a good point and it's been brought up before. I define >> > >>> q=: 2!:55 >> > >>> and enter >> > >>> q'' >> > >>> to exit J but it's not standard. We should probably make "exit" >> more >> > >>> accessible. >> > >>> >> > >>> >> > >>> On Mon, Jan 20, 2014 at 1:23 PM, Blake McBride <bl...@mcbride.name> >> > wrote: >> > >>> >> > >>>> Greetings, >> > >>>> >> > >>>> Just providing some feedback.... >> > >>>> >> > >>>> The fist thing I wanted to know when I started J was how to exit. >> I >> > did >> > >>>> some research and discovered 2!:55. I then defined a verb and used >> > that >> > >>> to >> > >>>> exit. Therefore, in order to get a clean way to exit a new >> language, >> > I >> > >>> had >> > >>>> to learn what a verb is, what system verbs were available, how to >> > define >> > >>>> it, and how to load it. (I know about ^d but think that is hardly >> a >> > >>> clean >> > >>>> way to exit.) >> > >>>> >> > >>>> Now, years later, I discover the pre-defined verb 'exit'. I >> checked >> > the >> > >>>> docs, especially "Learning J". There is no mention of 'exit'! >> > >>>> >> > >>>> As someone who has played with many languages over the years, and >> in >> > fact >> > >>>> an author of one, I respectfully suggest updating chapter 1 of >> > Learning J >> > >>>> to tell the user how to exit. Making a research project out of the >> > first >> > >>>> obvious desire is an unnecessary impediment to a language >> acquision. >> > >>>> >> > >>>> Additionally, since I discovered 'exit', a comprehensive >> dictionary of >> > >>>> pre-defined verbs would be very helpful. (I know about z, etc.) >> > >>>> >> > >>>> Thanks. Just some thoughts... >> > > >> > > —— >> > > Murray Eisenberg mur...@math.umass.edu >> > > Mathematics & Statistics Dept. >> > > Lederle Graduate Research Tower phone 240 246-7240 (H) >> > > University of Massachusetts >> > > 710 North Pleasant Street >> > > Amherst, MA 01003-9305 >> > > >> > > >> > > >> > > >> > > >> > > >> > > ---------------------------------------------------------------------- >> > > For information about J forums see >> http://www.jsoftware.com/forums.htm >> > ---------------------------------------------------------------------- >> > For information about J forums see http://www.jsoftware.com/forums.htm >> > >> >> >> >> -- >> Devon McCormick, CFA >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm >> > > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm