The statement was "772 defined symbols" which sounds like an external, language-oriented view. He also mentions that "ANSI Common Lisp has about 1,000 defined symbols and its specification is 1,300 pages long" though I see he's calling this a large language and he himself is really arguing _against_ small languages by attempting to refute arguments (mostly from "John David Stone") in their favor. Part of his argument is about blurring the line between a language proper and its libraries.
Another way he gives to measure the size of a language is by how long it takes to master it. By this standard, J is gargantuan. However, this is a flawed measure; a good essay on this is Peter Norvig's "Teach Yourself Programming in Ten Years": http://norvig.com/21-days.html . On Thu, Aug 4, 2011 at 1:28 PM, Henry Rich <[email protected]> wrote: > You said the Lisp analysis was of the implementation, not the language. > So maybe you should be looking at the source for the J interpreter. > > Henry Rich > > On 8/4/2011 1:22 PM, Devon McCormick wrote: > > I counted "+" and "o." both as two because both have monadic and dyadic > > forms. Perhaps I should count "o." as 26 (=>:#i:12), though I'm inclined > > to stick with 2 because the dyadic form covers a closely-related group. > I > > also ignored the many different kinds of numbers though I probably should > > include them as they are distinct uses of some of the letters. > > > > Even with generous inclusions, I doubt we're pushing 400. > > > > On Thu, Aug 4, 2011 at 12:53 PM, Roger Hui<[email protected]> wrote: > > > >> I think you have to do this kind of count > >> (and comparisons of counts) with care. > >> For example, do you count + as one or two? > >> Do you count o. as one or two or 27 (i:12 plus > >> 1 for the monad)? > >> > >> Also, f/ provides two families of functions. > >> etc. etc. > >> > >> > >> > >> ----- Original Message ----- > >> From: Devon McCormick<[email protected]> > >> Date: Thursday, August 4, 2011 8:14 > >> Subject: [Jprogramming] The size of J > >> To: J-programming forum<[email protected]>, > >> [email protected] > >> > >>> Hi - > >>> > >>> I was reading a section in "Patterns of Software" by Richard P. > >>> Gabriel in > >>> which he talks about "language size". This book is one of > >>> those annoying > >>> ones in which he seems to argue for many of the strengths of an > >>> APL but > >>> never, based on the parts I've read, mentions APL (though he > >>> must have known > >>> of it). > >>> > >>> In the essay on "Language Size", he talks about how the initial > >>> implementation of Common Lisp > >>> "...was relatively small: 772 defined symbols, including > >>> function names, > >>> macro names, global variables, and constants." Much of > >>> this essay builds > >>> the case for a small (but not too small) language being better > >>> than a large > >>> one. He also touches on the usefulness of arrays, in a way. > >>> > >>> In any case, here's my count for the size of J7: > >>> > >>> Vocabulary page: (*/10 4 3)-6 > >>> Foreign#: 0 1 2 3 4 5 6 7 8 9 11 > >>> 13 15 18 128 > >>> Foreigns: +/3 20 7 7 6 7 11 5 3 42 1 21 5 > >>> 7 6 > >>> > >>> Total: +/114 151 NB. Basic vocabulary symbols + foreigns. > >>> > >>> +/114 114 151 NB. monads and dyads - assumes > >>> all have both forms, but... > >>> 379 > >>> _24 NB. not both monadic and dyadic - above letters > >>> on Vocabulary page... > >>> _22 NB. not both - letters and numerals > >>> > >>> NB. Total: > >>> +/114 114 151 _24 _22 NB. monads and dyads > >>> and foreigns - univalents > >>> 333 > >>> > >>> So, 333 semantic tokens in total, by my count. > >> > >> ---------------------------------------------------------------------- > >> 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 ^me^ at acm. org is my preferred e-mail ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
