caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* Estimating the size of the ocaml community
@ 2005-02-02 21:31 Yaron Minsky
  2005-02-02 21:36 ` [Caml-list] " Christopher A. Watford
                   ` (11 more replies)
  0 siblings, 12 replies; 188+ messages in thread
From: Yaron Minsky @ 2005-02-02 21:31 UTC (permalink / raw)
  To: Caml Mailing List

I've been trying to come up with some estimates on the size of the ocaml
community, and I'm wondering if others have come up with anything better.
Here's what I have so far:

- The mailing list is supposed to have about 500 subscribers[1].  Hard to know
  if this number is up-to-date.  I wonder if that number has changed over
  time, and what it is today.

- The OCaml Humps contributors page[2] has about 200 members.

- If you type OCaml into google, you get about 800k hits.  This compares with
  29 million for C++.  "python programming" (without the quotes) gets about 5
  million

- If you type "ocaml resume", you get about 5.5k hits.  If you type "python
  resume", you get about 270k hits.  If you type "C++ resume", you get almost
  1m hits.

- Some schools teach ocaml.  Brown and Caltech apparently have intro ocaml
  courses.  Any other places that teach the language?  Any ideas on how many
  students go through these courses?

- A few companies use ocaml, including Baretta DE&IT, Dassault Aviation,
  LexiFi, Artisan (which has been bought up by AMD?)  Anyone know of other
  such companies?  It would be interesting to get a list togther of companies
  that use ocaml significantly.

I'd be interested of any evidence people have of the size and vibrancy of the
ocaml community.  I'd be particularly interested in evidence of ocaml use in
the United States, since it seems like a majority of ocaml use is outside of
the US.

[1] http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
[2] http://caml.inria.fr/humps/index_contributors.html


^ permalink raw reply	[flat|nested] 188+ messages in thread
* RE: [Caml-list] Estimating the size of the ocaml community
@ 2005-02-03  0:23 Don Syme
  0 siblings, 0 replies; 188+ messages in thread
From: Don Syme @ 2005-02-03  0:23 UTC (permalink / raw)
  To: yminsky, Caml Mailing List



Microsoft has used OCaml for SLAM (http://research.microsoft.com/slam/)
and other amazing tools that find really deep bugs in the C code
implementing device drivers. Byron Cook spoke about this at INRIA
recently.  So when Windows doesn't crash when you pull your PCMCIA card
out at the very moment your machine goes into "hibernate" mode (roughly
speaking one of the bugs they found, though I've probably got the
details wrong) then remember that OCaml made a big contribution to that
:-)

Don

P.S. All opinions my own.

-----Original Message-----
From: caml-list-admin@yquem.inria.fr
[mailto:caml-list-admin@yquem.inria.fr] On Behalf Of Yaron Minsky
Sent: 02 February 2005 21:31
To: Caml Mailing List
Subject: [Caml-list] Estimating the size of the ocaml community

I've been trying to come up with some estimates on the size of the ocaml
community, and I'm wondering if others have come up with anything
better.
Here's what I have so far:

- The mailing list is supposed to have about 500 subscribers[1].  Hard
to know
  if this number is up-to-date.  I wonder if that number has changed
over
  time, and what it is today.

- The OCaml Humps contributors page[2] has about 200 members.

- If you type OCaml into google, you get about 800k hits.  This compares
with
  29 million for C++.  "python programming" (without the quotes) gets
about 5
  million

- If you type "ocaml resume", you get about 5.5k hits.  If you type
"python
  resume", you get about 270k hits.  If you type "C++ resume", you get
almost
  1m hits.

- Some schools teach ocaml.  Brown and Caltech apparently have intro
ocaml
  courses.  Any other places that teach the language?  Any ideas on how
many
  students go through these courses?

- A few companies use ocaml, including Baretta DE&IT, Dassault Aviation,
  LexiFi, Artisan (which has been bought up by AMD?)  Anyone know of
other
  such companies?  It would be interesting to get a list togther of
companies
  that use ocaml significantly.

I'd be interested of any evidence people have of the size and vibrancy
of the
ocaml community.  I'd be particularly interested in evidence of ocaml
use in
the United States, since it seems like a majority of ocaml use is
outside of
the US.

[1] http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
[2] http://caml.inria.fr/humps/index_contributors.html

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


^ permalink raw reply	[flat|nested] 188+ messages in thread
* Re: [Caml-list] Estimating the size of the ocaml community
@ 2005-02-04 19:36 Ernesto Posse
  2005-02-04 23:57 ` Oliver Bandel
                   ` (2 more replies)
  0 siblings, 3 replies; 188+ messages in thread
From: Ernesto Posse @ 2005-02-04 19:36 UTC (permalink / raw)
  To: caml-list


I'd like to put my 2 cents on this thread. The original subject was the
size of the O'Caml community. By comparison with some major languages,
namely C/C++, Java, Python, the community is still smaller. The question
is why is that? So far the answer in this thread has been focused on
language features. More specifically about the pros and cons of the type
system.

  The type system is at the core of all languages in the ML family, as
well as many others. Personally I am a types-guy. While I do recognize
that untyped languages have a high "elasticity," useful in certain
contexts, I found that most applications do not benefit from that kind
of power, and that the structure imposed by a (strong) type system, as
well as its usefulness in developing correct code, outweight by far the
limitations and constraints imposed. Types are not just for
error-correction. They are a tool for designing a correct
conceptualization of a system.

  Then again, all this depends on the application. I am a firm believer of
using the right tool for the job.

  But language features such as the type system, are by no means the only
determinant of a language's popularity. There are a few key other
issues, such as:

1) Availability of development tools (IDE's) specially in different
plataforms
2) Size and usability of libraries, particularly those for GUI development
3) Existing codebase
4) Learning curve for
  a) Experienced programmers comming from other languages
  b) New programmers

  I think that unfortunately O'Caml is lagging in these issues, at least
from my personal experience. I have been a long-time user of O'Caml
(back from the Caml Light days,) and I try to use it when I can, but
sometimes it just takes too much time to get a project started. Spending
too much time on the preliminaries is a big deterrent for managers, and
without their support, projects won't be done in the language.

  Recently I started a small project, and I wanted to develop it in
O'Caml, but after a while I gave up, and did it in Java. My first
concern was choosing an IDE. Normally under Linux I use Emacs+Tuareg.
Fine, but my project had to be done on Windows.  I find Emacs under
Windows a bit annoying, and I wanted to have something similar to the
popular Java IDE's for O'Caml. So I had two options: Eclipse or
Cameleon. The Eclipse mode for O'Caml is still an alpha version, and not
very usable or customizable. Writing your own Eclipse mode is a dawnting
task on its own. So I tried compiling Cameleon on MinGW. After a week of
trying to figure out how to do it I gave up. I didn't find any concise
installation instructions, other than the typical "configure-make-make
install" routine, which should be enough, if there was no need to
install LablTK. I was never able to do that. This brings me to 4.a)
above. You cannot ask a student learning to program for the first time
to do any of these things, whether it is Emacs or installing one of
these IDEs, might be fine for a seasoned programmer, but not for a
rookie (I can testify that after teaching programming to non-programmers
for several years now.)

  The second point was the library. For most purposes I find the library
satisfying enough, except when it comes to GUIs. I have to admit that
using Swing on Java got me far in no time, and it looks very good. And
best of all, there are great tutorials for it. I wasn't able to find
good tutorials for GUIs in O'Caml.

  The third point, well, the hump is growing, but unfortunately languages
such as Python which are "younger," have sadly outpaced O'Caml. Then
again, we cannot really change that.

  The fourth point is fundamental. For seasoned programmers, learning a
new language in some cases is easier, but you always have some baggage.
You always come with some preconceptions about how things work or should
work, and this is an impediment. The older the programmer, the less
likely he is to learn a new language.

  Teaching it to new programmers is better, and I hope more people teach
O'Caml. Here at McGill (in Montreal) we teach Java. I am pushing for
O'Caml, but it is an uphill battle. Changing the base language has a big
logistics problem: you have to adapt the rest of the courses somehow,
either by changing them, or creating some additional language courses on
the side. Either way it is difficult to implement. But this is
fundamental. Teaching O'Caml only at the level of compilers courses, or
theory of programming languages, or other advanced courses, will keep
the user-base small. To really increase the O'Caml community we have to
push for introductory courses in O'Caml, and this will also require more
texts (beyond O'Reilly's) translated to different languages.

  Now, the point of increasing the community, and teaching O'Caml, should
not be simply that we like the language, and we think it is cool. No,
the point is that we believe it is a very good tool for a very diverse
number of applications and audience, and that it promotes a better
approach to programming.

  So, if you are a teacher or student, try promote it in your school. If
you work in industry, talk about it with your boss and colleagues. If
you are part of the O'Caml development team: please, more tools!
specially good IDE's, and CASE tools! Maybe some of the industries that
have used it could fork some money to help build better development
support tools.


-- 
Ernesto Posse
Modelling, Simulation and Design Lab - School of Computer Science
McGill University - Montreal, Quebec, Canada
url: http://moncs.cs.mcgill.ca/people/eposse




^ permalink raw reply	[flat|nested] 188+ messages in thread
* Re: [Caml-list] Estimating the size of the ocaml community
@ 2005-02-20 12:49 Jon Harrop
  2005-02-20 13:56 ` Thomas Fischbacher
  2005-02-20 16:18 ` Diego Olivier Fernandez Pons
  0 siblings, 2 replies; 188+ messages in thread
From: Jon Harrop @ 2005-02-20 12:49 UTC (permalink / raw)
  To: caml-list


I was just reading this presentation and stumbled upon some figures it 
contains of the number of freshmeat projects written in different languages:

http://www.uclan.ac.uk/facs/destech/gradschool/autumnschool/thu11built-karlin2.pdf

According to this, just over a year ago (09/2003), OCaml was the 31st most 
popular language with 22 projects.

Checking freshmeat now, OCaml is the 24th most popular language with 52 
projects. Here's the full {language, projects} list:

{{C, 7066}, {Java, 3769}, {C++, 3523}, {Perl, 3300}, {PHP, 2947}, {Python, 
    1763}, {Unix Shell, 721}, {Tcl, 421}, {JavaScript, 409}, {SQL, 
    405}, {Objective C, 260}, {Other, 221}, {Assembly, 220}, {Ruby, 219}, {C#,
     155}, {Other Scripting Engines, 125}, {Scheme, 111}, {Lisp, 81}, {PL/SQL,
     78}, {Delphi, 74}, {Fortran, 62}, {Ada, 56}, {Common Lisp, 54}, {OCaml, 
    52}, {Emacs-Lisp, 51}, {Pascal, 48}, {Haskell, 48}, {Awk, 46}, {Zope, 
    41}, {Smalltalk, 33}, {ASP, 33}, {Visual Basic, 31}, {Basic, 30}, {Eiffel,
     28}, {ML, 27}, {YACC, 24}, {Forth, 23}, {Cold Fusion, 
    20}, {Object Pascal, 19}, {Prolog, 18}, {Erlang, 18}, {Pike, 11}, {Lua, 
    11}, {Rexx, 10}, {Modula, 9}, {Groovy, 5}, {Logo, 4}, {Euphoria, 4}, {APL,
     3}, {PROGRESS, 2}, {Pliant, 2}, {Dylan, 2}, {XBasic, 1}, {Simula, 
    1}, {REALbasic, 1}, {Euler, 1}}

I also computed the fractional increase in the number of projects for each 
language to determine how rapidly languages have been adopted over the past 
year. C# is 1st and OCaml is 2nd:

{{C#, 3.44444}, {OCaml, 2.36364}, {Objective C, 1.91176}, {Common Lisp, 
    1.86207}, {JavaScript, 1.74043}, {Haskell, 1.71429}, {Ruby, 
    1.71094}, {Java, 1.57304}, {Emacs-Lisp, 1.54545}, {Delphi, 1.48}, {Ada, 
    1.47368}, {Python, 1.47162}, {PHP, 1.43058}, {C++, 1.41999}, {Scheme, 
    1.40506}, {SQL, 1.38225}, {Fortran, 1.37778}, {Unix Shell, 
    1.30144}, {Other Scripting Engines, {}}, {PL/SQL, 1.27869}, {C, 
    1.28077}, {ASP, 1.26923}, {Pascal, 1.26316}, {Assembly, 1.24294}, {Lisp, 
    1.22727}, {Zope, 1.20588}, {Perl, 1.19392}, {Tcl, 1.17927}, {Awk, 
    1.15}, {Other, 0.840304}}

Considering that C# is pushed by Microsoft, Objective C is pushed by Apple and 
LISP is pushed by Thomas Fischbacher ;-), I think this is very impressive.

I've also checked the number of unique posters to caml-list per month, which 
has continued to rise exponentially since 1992, currently weighs in at 300 
and is set to hit 1,000 in the year 2008.

-- 
Dr Jon D Harrop, Flying Frog Consultancy Ltd.
http://ffconsultancy.com


^ permalink raw reply	[flat|nested] 188+ messages in thread

end of thread, other threads:[~2005-02-21  6:25 UTC | newest]

Thread overview: 188+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-02-02 21:31 Estimating the size of the ocaml community Yaron Minsky
2005-02-02 21:36 ` [Caml-list] " Christopher A. Watford
2005-02-02 21:54   ` Frédéric Gava
2005-02-03  3:58     ` skaller
2005-02-03  6:35       ` Erik de Castro Lopo
2005-02-03 16:29         ` Olivier Pérès
2005-02-03 18:06         ` Thomas Fischbacher
2005-02-03 18:34           ` Frédéric Gava
2005-02-03 21:16             ` Thomas Fischbacher
2005-02-03 21:58               ` Paul Snively
2005-02-03 22:42                 ` Bardur Arantsson
2005-02-03 23:29                   ` Thomas Fischbacher
2005-02-03 22:33               ` josh
2005-02-03 23:22                 ` Thomas Fischbacher
2005-02-03 23:39                   ` Richard Jones
2005-02-04  9:04                     ` Frédéric Gava
2005-02-04  9:37                       ` Richard Jones
2005-02-04 10:11                       ` Olivier Andrieu
2005-02-04 11:14                         ` Frédéric Gava
2005-02-04 12:15                           ` Richard Jones
2005-02-04 12:46                             ` Marcin 'Qrczak' Kowalczyk
2005-02-04 12:51                             ` Gerd Stolpmann
2005-02-04 13:43                               ` Richard W. M. Jones
2005-02-04 16:01                                 ` Gerd Stolpmann
2005-02-04 16:52                                 ` Oliver Bandel
2005-02-04 17:21                                   ` Frédéric Gava
2005-02-04 17:55                                     ` Oliver Bandel
2005-02-04 16:48                               ` Oliver Bandel
2005-02-04 12:15                           ` Olivier Andrieu
2005-02-04 16:42                         ` Oliver Bandel
2005-02-04 10:58                     ` Oliver Bandel
2005-02-04 17:27                       ` Damien Doligez
2005-02-04 17:59                         ` Oliver Bandel
2005-02-04  1:17                   ` Michael Walter
2005-02-04 10:53                   ` Oliver Bandel
2005-02-04 22:01                     ` Thomas Fischbacher
2005-02-05 12:27                       ` Oliver Bandel
2005-02-06  0:08                         ` Thomas Fischbacher
2005-02-03 23:29               ` Richard Jones
2005-02-04  2:33               ` Jon Harrop
     [not found]                 ` <877e9a170502031856175260c8@mail.gmail.com>
2005-02-04  2:56                   ` Michael Walter
2005-02-04 10:26                     ` [Caml-list] The boon of static type checking Jon Harrop
2005-02-04 17:02                       ` Damien Doligez
2005-02-04 18:00                         ` Jon Harrop
2005-02-04 20:38                           ` Christophe TROESTLER
2005-02-04 21:42                             ` Jon Harrop
2005-02-04 22:11                               ` Christophe TROESTLER
2005-02-05  0:58                                 ` Jon Harrop
2005-02-05  1:52                                   ` Shivkumar Chandrasekaran
2005-02-07 18:47                                   ` Damien Doligez
2005-02-05  5:24                         ` Jacques Garrigue
2005-02-04 21:52                       ` Thomas Fischbacher
2005-02-04 22:27                         ` Christophe TROESTLER
2005-02-05 10:00                           ` Remi Vanicat
2005-02-06 11:18                             ` Christophe TROESTLER
2005-02-04 22:55                         ` Thomas Fischbacher
2005-02-06  0:02                           ` Thomas Fischbacher
2005-02-06  0:56                             ` Erik de Castro Lopo
2005-02-06 10:03                               ` Thomas Fischbacher
2005-02-06  1:34                             ` Richard Jones
2005-02-06  2:30                               ` Erik de Castro Lopo
2005-02-06  9:54                               ` Marcin 'Qrczak' Kowalczyk
2005-02-06 10:05                               ` Thomas Fischbacher
2005-02-05 21:48                       ` Michael Walter
2005-02-06 10:22                       ` Radu Grigore
2005-02-06 12:16                         ` Gerd Stolpmann
2005-02-06 14:59                           ` skaller
2005-02-06 22:30                             ` Radu Grigore
2005-02-07  3:15                               ` Erik de Castro Lopo
2005-02-06 17:28                         ` Jon
2005-02-06 22:26                           ` Radu Grigore
2005-02-07  2:51                             ` skaller
2005-02-07  1:54                           ` skaller
2005-02-07  5:34                             ` Brian Hurt
2005-02-07  6:16                               ` Michael Walter
2005-02-07 14:58                                 ` Igor Pechtchanski
2005-02-12 15:22                                 ` Brian Hurt
2005-02-12 16:11                                   ` Thomas Fischbacher
2005-02-12 18:47                                     ` Brian Hurt
2005-02-12 21:58                                       ` Thomas Fischbacher
2005-02-12 17:06                                   ` skaller
2005-02-12 22:57                                   ` Michael Walter
2005-02-13  1:12                                     ` Thomas Fischbacher
2005-02-13  1:51                                       ` Tony Edgin
2005-02-13  2:12                                         ` Thomas Fischbacher
2005-02-13 10:26                                           ` Daniel Heck
2005-02-13 18:28                                             ` Thomas Fischbacher
2005-02-13 20:52                                               ` Michael Walter
2005-02-13 21:42                                                 ` Thomas Fischbacher
2005-02-13 22:51                                                   ` Michael Walter
2005-02-13 23:59                                                     ` Thomas Fischbacher
2005-02-14  0:11                                                       ` Michael Walter
2005-02-14  0:42                                                         ` Thomas Fischbacher
2005-02-14  1:11                                                           ` Michael Walter
2005-02-14  1:46                                                             ` Michael Vanier
2005-02-14  1:57                                                               ` Michael Walter
2005-02-14 14:19                                                               ` Stefan Monnier
2005-02-14 14:36                                                                 ` [Caml-list] " Thomas Fischbacher
2005-02-14  1:19                                                           ` [Caml-list] " Michael Walter
2005-02-14 17:29                                                           ` Martin Berger
2005-02-14 18:44                                                             ` skaller
2005-02-14 19:17                                                             ` Thomas Fischbacher
2005-02-14  2:22                                                       ` skaller
2005-02-14  8:04                                                         ` Paul Snively
2005-02-14  9:33                                                         ` Thomas Fischbacher
2005-02-14  9:39                                                         ` Thomas Fischbacher
2005-02-14  2:10                                                   ` skaller
2005-02-13  2:27                                     ` Brian Hurt
2005-02-13  2:34                                       ` Michael Walter
2005-02-07 10:57                               ` Ville-Pertti Keinonen
2005-02-07 16:58                                 ` skaller
2005-02-07 17:24                                   ` Ville-Pertti Keinonen
2005-02-07 17:56                                   ` Paul Snively
2005-02-07 17:59                                   ` skaller
2005-02-07 17:30                                 ` skaller
2005-02-07 13:07                               ` Marcin 'Qrczak' Kowalczyk
2005-02-12 15:42                                 ` Brian Hurt
2005-02-07 17:42                               ` Ken Rose
2005-02-07  2:23                           ` skaller
2005-02-04  9:29                 ` [Caml-list] Estimating the size of the ocaml community Thomas Fischbacher
2005-02-04 10:26                   ` Andreas Rossberg
2005-02-04 17:54                     ` Thomas Fischbacher
2005-02-04 15:43                   ` Oliver Bandel
2005-02-04 19:54                   ` Christophe TROESTLER
2005-02-04 20:20                     ` Karl Zilles
2005-02-04 22:07                     ` Thomas Fischbacher
2005-02-04  9:41                 ` Richard Jones
2005-02-04 10:03                   ` Thomas Fischbacher
2005-02-04 16:00                   ` Oliver Bandel
2005-02-04 17:32                     ` sejourne_kevin
2005-02-04 18:46                       ` Oliver Bandel
2005-02-05  1:49                     ` skaller
2005-02-04  8:55               ` Ville-Pertti Keinonen
2005-02-04  9:36                 ` Thomas Fischbacher
2005-02-04 10:30               ` Oliver Bandel
2005-02-04 22:02                 ` Thomas Fischbacher
2005-02-05 13:14                   ` Oliver Bandel
2005-02-05 16:37                     ` Why can't types and exceptions be nested (was: Re: [Caml-list] Estimating the size of the ocaml community) Richard Jones
2005-02-05 17:04                       ` Basile STARYNKEVITCH
2005-02-05 19:26                       ` Oliver Bandel
2005-02-06  2:56                       ` skaller
2005-02-04 21:55             ` [Caml-list] Estimating the size of the ocaml community Basile STARYNKEVITCH
2005-02-03 19:04           ` ronniec95
2005-02-03 20:06           ` skaller
2005-02-03 20:50             ` chris.danx
2005-02-03 21:14               ` Jon Harrop
2005-02-03 21:34                 ` chris.danx
2005-02-03 22:07                   ` Bardur Arantsson
2005-02-03 21:47                 ` Nicolas Cannasse
2005-02-04  3:52               ` skaller
2005-02-04 16:12             ` Oliver Bandel
2005-02-05  2:04               ` skaller
2005-02-03 20:35           ` chris.danx
2005-02-03  8:36     ` sejourne_kevin
2005-02-03  8:39       ` Matthieu Brucher
2005-02-03 16:23       ` Olivier Pérès
2005-02-03 10:10     ` Stefano Zacchiroli
2005-02-03 16:44       ` Vincenzo Ciancia
2005-02-02 22:10 ` [Caml-list] " Kenneth Knowles
2005-02-02 22:40 ` Michael Jeffrey Tucker
2005-02-02 22:52 ` Richard Jones
2005-02-02 23:42 ` Nicolas Cannasse
2005-02-03  6:53 ` Evan Martin
2005-02-03  6:57 ` Eric Stokes
2005-02-03 20:53 ` chris.danx
2005-02-03 23:29 ` Sylvain LE GALL
2005-02-03 23:38 ` sejourne_kevin
2005-02-07  8:49 ` Sven Luther
2005-02-07  9:23 ` Johann Spies
2005-02-03  0:23 Don Syme
2005-02-04 19:36 Ernesto Posse
2005-02-04 23:57 ` Oliver Bandel
2005-02-05 13:24   ` Oliver Bandel
2005-02-05  2:27 ` skaller
2005-02-05  2:55   ` Michael Walter
2005-02-05  3:07   ` Ernesto Posse
2005-02-05 13:31     ` Oliver Bandel
2005-02-05 15:26       ` William D.Neumann
2005-02-05 16:41       ` Richard Jones
2005-02-05  4:58   ` Christopher A. Watford
2005-02-05 16:09   ` Martin Willensdorfer
2005-02-05  7:13 ` Kenneth Knowles
2005-02-05 13:39   ` Oliver Bandel
2005-02-20 12:49 Jon Harrop
2005-02-20 13:56 ` Thomas Fischbacher
2005-02-20 16:18 ` Diego Olivier Fernandez Pons
2005-02-21  2:07   ` Jon Harrop
2005-02-21  6:25     ` Erik de Castro Lopo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).