What languages have huge standard libraries?

  • Follow


Common Lisp has ~1000 functions in its standard library. I recall that
Python was said to have a huge standard library though probably not as
huge as clisp.

What languages have huge standard libraries, which have small, and what
are the pros and cons of that?

0
Reply casioculture (506) 11/16/2005 4:24:08 AM

casioculture@gmail.com wrote:

> Common Lisp has ~1000 functions in its standard library. 

Common Lisp has exactly 978 standardized external symbols in
the COMMON-LISP package.  However, many of these are not the names
of functions.

	Paul
0
Reply dietz (395) 11/16/2005 4:41:42 AM


C++, Java and C# have really large standard libraries. The main
disadvantage of the large library is that you have steep learning
curve. However, once you master the library, you can be really
productive.

--
EventStudio System Designer 2.5 - http://www.EventHelix.com/EventStudio
Sequence Diagram Based System Design and Object Modeling Tool

0
Reply eventhelix (355) 11/16/2005 12:57:24 PM

Paul F. Dietz wrote:
> casioculture@gmail.com wrote:
>> Common Lisp has ~1000 functions in its standard library.
> 
> Common Lisp has exactly 978 standardized external symbols in
> the COMMON-LISP package.  However, many of these are not the names
> of functions.

As a functional programming language, Lisp's functions are likely to provide
considerably more functionality compared to languages like C++.

-- 
Dr Jon D Harrop, Flying Frog Consultancy
http://www.ffconsultancy.com
0
Reply usenet116 (1760) 11/16/2005 11:29:41 PM

Jon Harrop <usenet@jdh30.plus.com> writes:

>Paul F. Dietz wrote:
>> casioculture@gmail.com wrote:
>>> Common Lisp has ~1000 functions in its standard library.
>> 
>> Common Lisp has exactly 978 standardized external symbols in
>> the COMMON-LISP package.  However, many of these are not the names
>> of functions.

>As a functional programming language, Lisp's functions are likely to provide
>considerably more functionality compared to languages like C++.

For a carefully selected definition of a functional language.....

______________________________________________________________________________ 
Dr Chris McDonald                          E: chris@csse.uwa.edu.au
Computer Science & Software Engineering    W: http://www.csse.uwa.edu.au/~chris
The University of Western Australia, M002  T: +618 6488 2533
Crawley, Western Australia, 6009           F: +618 6488 1089
0
Reply chris16 (580) 11/16/2005 11:48:26 PM

Chris McDonald wrote:
> For a carefully selected definition of a functional language.....

What do you mean?

-- 
Dr Jon D Harrop, Flying Frog Consultancy
http://www.ffconsultancy.com
0
Reply usenet116 (1760) 11/17/2005 12:13:19 AM

casioculture@gmail.com wrote:
> Common Lisp has ~1000 functions in its standard library. I recall that
> Python was said to have a huge standard library though probably not as
> huge as clisp.

It doesn't make sense to say "huge" or "small", you should just quantify how
big they are (e.g. number of definitions).

> What languages have huge standard libraries, which have small, and what
> are the pros and cons of that?

OCaml has 2,000 value definitions (1,400 function definitions) and 150
module definitions.

Mathematica has 27,000 symbol definitions and 390 package definitions.

A small standard library makes it easier to implement the language. A larger
standard library makes it easier to write succinct and reliable programs.

-- 
Dr Jon D Harrop, Flying Frog Consultancy
http://www.ffconsultancy.com
0
Reply usenet116 (1760) 11/17/2005 12:14:54 AM

"EventHelix.com" <eventhelix@gmail.com> wrote in message
news:1132145844.506776.68410@o13g2000cwo.googlegroups.com...
> C++, Java and C# have really large standard libraries. The main
> disadvantage of the large library is that you have steep learning
> curve. However, once you master the library, you can be really
> productive.
>
Steep learning curve is good.   Steep, in this case does not mean
the same as climbing a hill, which is certainly slow going when it
is steep.  Rather, it is mathematical concept from educational
pychology.

Think of learning curve on a two-dimensional graph.  The x axis
is time and the y axis is knowledge.  Therefore, you are learning a
lot in a short period  of time with a steep learning curve.   A shallow
learning curve  means it takes a long time to learn enough
about a language to use it effectively.

Richard Riehle


0
Reply adaworks2 (753) 11/17/2005 2:03:26 AM

In article <OxRef.15479$D13.3287@newssvr11.news.prodigy.com>, adaworks@sbcglobal.net says...
> 
> "EventHelix.com" <eventhelix@gmail.com> wrote in message
> news:1132145844.506776.68410@o13g2000cwo.googlegroups.com...
> > C++, Java and C# have really large standard libraries. The main
> > disadvantage of the large library is that you have steep learning
> > curve. However, once you master the library, you can be really
> > productive.
> >
> Steep learning curve is good.   Steep, in this case does not mean
> the same as climbing a hill, which is certainly slow going when it
> is steep.  Rather, it is mathematical concept from educational
> pychology.
> 
> Think of learning curve on a two-dimensional graph.  The x axis
> is time and the y axis is knowledge.  Therefore, you are learning a
> lot in a short period  of time with a steep learning curve.   A shallow
> learning curve  means it takes a long time to learn enough
> about a language to use it effectively.
> 
Only if you assume that time is plotted along the horizontal axis. 
0
Reply Mike 11/17/2005 3:29:41 AM

"Mike" <m.fee@iirrll..ccrrii..nnzz> wrote in message
news:MPG.1de6c0452f30371a9896ac@news.fx.net.nz...
> In article <OxRef.15479$D13.3287@newssvr11.news.prodigy.com>,
adaworks@sbcglobal.net says...
> >
> > "EventHelix.com" <eventhelix@gmail.com> wrote in message
> > news:1132145844.506776.68410@o13g2000cwo.googlegroups.com...
> > > C++, Java and C# have really large standard libraries. The main
> > > disadvantage of the large library is that you have steep learning
> > > curve. However, once you master the library, you can be really
> > > productive.
> > >
> > Steep learning curve is good.   Steep, in this case does not mean
> > the same as climbing a hill, which is certainly slow going when it
> > is steep.  Rather, it is mathematical concept from educational
> > pychology.
> >
> > Think of learning curve on a two-dimensional graph.  The x axis
> > is time and the y axis is knowledge.  Therefore, you are learning a
> > lot in a short period  of time with a steep learning curve.   A shallow
> > learning curve  means it takes a long time to learn enough
> > about a language to use it effectively.
> >
> Only if you assume that time is plotted along the horizontal axis.
>
In the educational pyschology model, where the concept of learning
curve originated, time is the horizontal axis.   What else do you plan
to put on that axis?  You can certainly develop a non-standard
graph, but that does not change the fact that the conventional learning
curve is knowledge on the y axis and time is on the x axis.  If one intends
to convey some non-conventional meaning to a term, then it is important
to state the nature of the model so others will understand the intent of
that non-conventional model.

I realize that, under the folklore model, "steep" means difficult.  However,
under the mathematical model, steep means just the opposite.   If one
prefers folklore to mathematics, so be it.

Richard Riehle


0
Reply adaworks2 (753) 11/17/2005 6:04:09 AM

In article <t3Vef.22282$dO2.2849@newssvr29.news.prodigy.net>, 
adaworks@sbcglobal.net says...

> In the educational pyschology model, where the concept of learning
> curve originated, time is the horizontal axis.   What else do you plan
> to put on that axis?  You can certainly develop a non-standard
> graph, but that does not change the fact that the conventional learning
> curve is knowledge on the y axis and time is on the x axis.  If one intends
> to convey some non-conventional meaning to a term, then it is important
> to state the nature of the model so others will understand the intent of
> that non-conventional model.
> 
> I realize that, under the folklore model, "steep" means difficult.  However,
> under the mathematical model, steep means just the opposite.   If one
> prefers folklore to mathematics, so be it.

If a definition of 'steep learning curve' is required, one consults 
neither folklore nor mathematics, but current usage in the context in 
which it was deployed - in this case general discussion about 
programming languages.

In which case the common usage means something like 'requiring a lot of 
effort to get anywhere'.

- Gerry Quinn
 
0
Reply gerryq (1321) 11/17/2005 1:24:19 PM

Jon Harrop wrote:
> Chris McDonald wrote:
> 
>>For a carefully selected definition of a functional language.....
> 
> 
> What do you mean?

Lisp supports imperative programming just as well as it supports
functional programming.  Calling it a 'functional language' gives
the idea that that's how it's supposed to be used, which is incorrect.

	Paul

0
Reply dietz (395) 11/17/2005 1:34:58 PM

Paul F. Dietz wrote:
> Jon Harrop wrote:
>> What do you mean?
> 
> Lisp supports imperative programming just as well as it supports
> functional programming.

Yes. Lisp is an impure functional programming language.

> Calling it a 'functional language' gives the idea that that's how it's
> supposed to be used, which is incorrect. 

That classification has nothing to do with the supposed use of a language.

-- 
Dr Jon D Harrop, Flying Frog Consultancy
http://www.ffconsultancy.com
0
Reply usenet116 (1760) 11/17/2005 9:18:24 PM

"Gerry Quinn" <gerryq@DELETETHISindigo.ie> wrote in message
news:MPG.1de694d9dcf8108598a790@news.indigo.ie...
> In article <t3Vef.22282$dO2.2849@newssvr29.news.prodigy.net>,
> adaworks@sbcglobal.net says...
>
> > In the educational pyschology model, where the concept of learning
> > curve originated, time is the horizontal axis.   What else do you plan
> > to put on that axis?  You can certainly develop a non-standard
> > graph, but that does not change the fact that the conventional learning
> > curve is knowledge on the y axis and time is on the x axis.  If one intends
> > to convey some non-conventional meaning to a term, then it is important
> > to state the nature of the model so others will understand the intent of
> > that non-conventional model.
> >
> > I realize that, under the folklore model, "steep" means difficult.  However,
> > under the mathematical model, steep means just the opposite.   If one
> > prefers folklore to mathematics, so be it.
>
> If a definition of 'steep learning curve' is required, one consults
> neither folklore nor mathematics, but current usage in the context in
> which it was deployed - in this case general discussion about
> programming languages.
>
> In which case the common usage means something like 'requiring a lot of
> effort to get anywhere'.
>
That, of course, is a folkloric intrepretation and lacks intellectual rigor.
The
fact that so many people get it wrong does not make it right.

Richard Riehle


0
Reply adaworks2 (753) 11/18/2005 6:48:09 AM

In article <JOeff.16704$7h7.924@newssvr21.news.prodigy.com>, 
adaworks@sbcglobal.net says... 
> "Gerry Quinn" <gerryq@DELETETHISindigo.ie> wrote in message

> > > I realize that, under the folklore model, "steep" means difficult.  However,
> > > under the mathematical model, steep means just the opposite.   If one
> > > prefers folklore to mathematics, so be it.

> > If a definition of 'steep learning curve' is required, one consults
> > neither folklore nor mathematics, but current usage in the context in
> > which it was deployed - in this case general discussion about
> > programming languages.

> > In which case the common usage means something like 'requiring a lot of
> > effort to get anywhere'.

> That, of course, is a folkloric intrepretation and lacks intellectual rigor.
> The fact that so many people get it wrong does not make it right.

On the contrary, it is a lexicographic interpretation.  The meaning of 
words and phrases evolves, and is determined by usage, not 
prescription.

Words and phrases can have separate technical and informal meanings, of 
course, sometimes many.  

- Gerry Quinn


0
Reply gerryq (1321) 11/19/2005 2:48:14 PM

"Gerry Quinn" <gerryq@DELETETHISindigo.ie> wrote in message
news:MPG.1de94b87e900cadb98a7a1@news.indigo.ie...
> In article <JOeff.16704$7h7.924@newssvr21.news.prodigy.com>,
> adaworks@sbcglobal.net says...
> > "Gerry Quinn" <gerryq@DELETETHISindigo.ie> wrote in message
>
> > > > I realize that, under the folklore model, "steep" means difficult.
However,
> > > > under the mathematical model, steep means just the opposite.   If one
> > > > prefers folklore to mathematics, so be it.
>
> > > If a definition of 'steep learning curve' is required, one consults
> > > neither folklore nor mathematics, but current usage in the context in
> > > which it was deployed - in this case general discussion about
> > > programming languages.
>
> > > In which case the common usage means something like 'requiring a lot of
> > > effort to get anywhere'.
>
> > That, of course, is a folkloric intrepretation and lacks intellectual rigor.
> > The fact that so many people get it wrong does not make it right.
>
> On the contrary, it is a lexicographic interpretation.  The meaning of
> words and phrases evolves, and is determined by usage, not
> prescription.
>
> Words and phrases can have separate technical and informal meanings, of
> course, sometimes many.
>
I would think that, this being a forum for technical discussion, that there
would
be a bias toward rigorous intellectual discipline.   When one says "steep" there
is  the assumption of some metric.   A metric is a relationship between two or
more values.   How is that metric described mathematically?     What are the
factors?  What is the scale?

Abraham Lincoln once posed the question to someone, "What do you call a
dog when you consider its tail to be a leg?"  His own answer was, "It is still
a dog.  Calling the tail a leg does not make it so.  It is still a dog."  I have
paraphrased this since (speaking of intellectual rigor) I am too lazy to look
up the exact quote.

The general population gets science wrong a lot.   That does not relieve us
from the responsibility to strive, in our own writings and conversations, to
get it right.   There are people who read horoscopes daily in the foolish
belief that the configuration of stars influences their love life.   There is
a growing number of people who believe that the "dark matter" that some
scientists believe is omnipresent throughout the universes is actually God.
There are people who believe all sorts of things that have not scientific
or factual basis.

This is a forum focused on technology.  Even in this forum people make
absurd statements from time to time.   The adopt schemes for building
software that are more wishful thinking than reality, the make assumptions
about technologies they have never used or studied, but can pronounce
good or bad based on hearsay, and they fail to cite sources or scholarly
research to support their assertions.    Still others do bring intellectual
rigor to their contributions.  These latter contributors are making a
real effort to think through their statements, as well as take care in how
they express their viewpoints.

I realize that, within Internet forums, sloppy scholarship, crackpot science,
halfbaked ideas, and mischievous wierdness too easily find an audience
all over the world.   Such freedom of alternative viewpoints is a price we
pay for the benefit of discovering new ideas that emerge in the private
laboratories and experience of software practitioners who might otherwise
remain obscure.   Further, challenges to ill-conceived ideas, even by some
whose own ideas are equally flawed, does have entertainment value.

If you wish to use a non-rigorous, non-scientific, flawed mathematical,
foundation for your assertions, so be it.   It is not my job to change
you.   However, you might, reluctantly, benefit from knowing
that you are not standing on firm intellectual foundation when you
misuse otherwise useful scientific language.

Richard Riehle


0
Reply adaworks2 (753) 11/19/2005 5:15:25 PM

In article <N4Jff.21561$tV6.10668@newssvr27.news.prodigy.net>, 
adaworks@sbcglobal.net says...
> "Gerry Quinn" <gerryq@DELETETHISindigo.ie> wrote in message

> > On the contrary, it is a lexicographic interpretation.  The meaning of
> > words and phrases evolves, and is determined by usage, not
> > prescription.

> > Words and phrases can have separate technical and informal meanings, of
> > course, sometimes many.

> I would think that, this being a forum for technical discussion, that there
> would be a bias toward rigorous intellectual discipline.   When one says "steep" there
> is  the assumption of some metric.   A metric is a relationship between two or
> more values.   How is that metric described mathematically?     What are the
> factors?  What is the scale?

There is indeed a bias towards rigourous intellectual discipline in the 
field of computer science and software engineering, towards moderate 
intellectual discipline in math, and towards a certain amount of 
intellectual discipline in technical and hard scientific subjects.  
Educational psychology is at best marginally aligned to hard science.  
There is no reason why people would fret about how the phrase was 
intended by whoever invented it.  The informal usage is the more 
natural.

> Abraham Lincoln once posed the question to someone, "What do you call a
> dog when you consider its tail to be a leg?"  His own answer was, "It is still
> a dog.  Calling the tail a leg does not make it so.  It is still a dog."  I have
> paraphrased this since (speaking of intellectual rigor) I am too lazy to look
> up the exact quote.

I am familiar with the quote, and it makes a valid point, but not 
necessarily the point that you want to make.  Arbitrarily calling 
something by an unusual name is not the same as conforming to current 
usage.  And more sophisticated variations are usually best analysed by 
separating the anecdote into portions that are written in different 
versions of English.

> The general population gets science wrong a lot.   That does not relieve us
> from the responsibility to strive, in our own writings and conversations, to
> get it right.   There are people who read horoscopes daily in the foolish
> belief that the configuration of stars influences their love life.   There is
> a growing number of people who believe that the "dark matter" that some
> scientists believe is omnipresent throughout the universes is actually God.
> There are people who believe all sorts of things that have not scientific
> or factual basis.

There are indeed, and pedantry about the origins of phrases that have 
escaped into public usage will not alter that situation a whit.  (If 
indeed, you have a desire or consider it your responsibility to alter 
it.)

> This is a forum focused on technology.  Even in this forum people make
> absurd statements from time to time.  The adopt schemes for building
> software that are more wishful thinking than reality, the make assumptions
> about technologies they have never used or studied, but can pronounce
> good or bad based on hearsay, and they fail to cite sources or scholarly
> research to support their assertions.    Still others do bring intellectual
> rigor to their contributions.  These latter contributors are making a
> real effort to think through their statements, as well as take care in how
> they express their viewpoints.

> I realize that, within Internet forums, sloppy scholarship, crackpot science,
> halfbaked ideas, and mischievous wierdness too easily find an audience
> all over the world.   Such freedom of alternative viewpoints is a price we
> pay for the benefit of discovering new ideas that emerge in the private
> laboratories and experience of software practitioners who might otherwise
> remain obscure.   Further, challenges to ill-conceived ideas, even by some
> whose own ideas are equally flawed, does have entertainment value.

> If you wish to use a non-rigorous, non-scientific, flawed mathematical,
> foundation for your assertions, so be it.   It is not my job to change
> you.   However, you might, reluctantly, benefit from knowing
> that you are not standing on firm intellectual foundation when you
> misuse otherwise useful scientific language.

But I did not use any such flawed foundation for any assertions.  I 
merely pointed out that the phrase you like has developed a common 
meaning and that is what people mostly use it to mean.  A consequence 
is that the original meaning will have little use except among 
convocations of educational psychologists.  The notion that 
dictionaries are essentially descriptive rather than prescriptive is 
not, as far as I know, considered ill-founded by lexicographers - 
though no doubt there will be argument about the details.  

Your forebodings of creeping irrationality seem ill-founded to me.  
Criticising software engineers for using the informal meaning of 'steep 
learning curve' is like berating someone on sci.geology for saying that 
the rock samples he took seem to have fallen into a black hole as he 
cannot find them.

- Gerry Quinn

 
0
Reply gerryq (1321) 11/20/2005 1:07:49 PM

Gerry Quinn wrote:
> Educational psychology is at best marginally aligned to hard science.

As opposed to soft science or easy science? ;-)

If you say "soft" science then you may wish to measure the poise of some
scientists, to quantify your statement. I have heard that metallurgists are
hard, polymer scientists are soft and condensed matter theorists can be
quite thick.

If you say "easy" science then you're implying that "hard" science has a
steeper learning curve, defined to be when the derivative of loafing with
respect to l33tness is strictly larger in the limit of n00b.

-- 
Dr Jon D Harrop, Flying Frog Consultancy
http://www.ffconsultancy.com
0
Reply usenet116 (1760) 11/20/2005 4:53:37 PM

> > "Gerry Quinn" <gerryq@DELETETHISindigo.ie> wrote in message
>
> But I did not use any such flawed foundation for any assertions.  I
> merely pointed out that the phrase you like has developed a common
> meaning and that is what people mostly use it to mean.  A consequence
> is that the original meaning will have little use except among
> convocations of educational psychologists.  The notion that
> dictionaries are essentially descriptive rather than prescriptive is
> not, as far as I know, considered ill-founded by lexicographers -
> though no doubt there will be argument about the details.
>
OK.  You are content to be wrong.  And I am not interested in
further argument.   "He convinced against his will is of the same
opinion still."

Richard Riehle


0
Reply adaworks2 (753) 11/21/2005 1:05:45 AM

In article <J39gf.14960$BZ5.3025@newssvr13.news.prodigy.com>, 
adaworks@sbcglobal.net says... 
> > > "Gerry Quinn" <gerryq@DELETETHISindigo.ie> wrote in message

> > But I did not use any such flawed foundation for any assertions.  I
> > merely pointed out that the phrase you like has developed a common
> > meaning and that is what people mostly use it to mean.  A consequence
> > is that the original meaning will have little use except among
> > convocations of educational psychologists.  The notion that
> > dictionaries are essentially descriptive rather than prescriptive is
> > not, as far as I know, considered ill-founded by lexicographers -
> > though no doubt there will be argument about the details.

> OK.  You are content to be wrong.  And I am not interested in
> further argument.   "He convinced against his will is of the same
> opinion still."

"And so he retires from the fray,
But grumbles that HE won the day."

My addendum to whoever's couplet you quote, but I think it fits.

- Gerry Quinn
0
Reply gerryq (1321) 11/22/2005 3:08:00 PM

In article <J39gf.14960$BZ5.3025@newssvr13.news.prodigy.com>, 
adaworks@sbcglobal.net says... 
> > > "Gerry Quinn" <gerryq@DELETETHISindigo.ie> wrote in message

> > But I did not use any such flawed foundation for any assertions.  I
> > merely pointed out that the phrase you like has developed a common
> > meaning and that is what people mostly use it to mean.  A consequence
> > is that the original meaning will have little use except among
> > convocations of educational psychologists.  The notion that
> > dictionaries are essentially descriptive rather than prescriptive is
> > not, as far as I know, considered ill-founded by lexicographers -
> > though no doubt there will be argument about the details.

> OK.  You are content to be wrong.  And I am not interested in
> further argument.   "He convinced against his will is of the same
> opinion still."

"And so he retires from the fray,
But grumbles that HE won the day."

My addendum to whoever's couplet you quote, but I think it fits.

- Gerry Quinn
0
Reply gerryq (1321) 11/23/2005 3:14:29 PM

In article <MPG.1dee95cca7bf000398a7bb@news.indigo.ie>, 
gerryq@DELETETHISindigo.ie says...

Sorry for duplicates - my newsserver was out for a week.

- Gerry Quinn
0
Reply gerryq (1321) 11/28/2005 4:20:49 PM

<adaworks@sbcglobal.net> writes:

>> In which case the common usage means something like 'requiring a lot of
>> effort to get anywhere'.
>
> That, of course, is a folkloric intrepretation and lacks intellectual
> rigor.  The fact that so many people get it wrong does not make it right.

I've always thought both interpretations were correct and referred to
basically same thing, but were different in emphasis.

Consider two knowledge domains, 'A' and 'B'.  'A' contains much more
information than 'B', so--given an identically sloped learning curve--'A'
takes longer (more 'x') to learn than 'B'.

Now consider attempting to learn both in the same time.  Now the slope
of 'A's curve must be much steeper, because it must cover more 'y' in the
same amount of 'x'.

What I think people are doing is making an assumption that, "I wish to
learn this high information content subject in a brief period of time.
In fact, in approximately the same time as I might spend learning some
other, lesser, subject."

Therefore, the first subject *ends* *up* having a steeper learning curve
*due* *to* the implicit assumption of reducing 'x'.

So when people say a complex topic has a steep learning curve, what they
mean includes: given a time period similar to less complex topics.


-- 
|_ CJSonnack <Chris@Sonnack.com> _____________| How's my programming? |
|_ http://www.Sonnack.com/ ___________________| Call: 1-800-DEV-NULL  |
|_____________________________________________|_______________________|
0
Reply Chris7 (2511) 12/2/2005 6:22:00 PM

22 Replies
32 Views

(page loaded in 0.288 seconds)


Reply: