caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* Re: [Caml-list] OCaml popularity
@ 2003-03-15 16:27 Oliver Bandel
  2003-03-15 17:55 ` Sergey Goldgaber
  0 siblings, 1 reply; 57+ messages in thread
From: Oliver Bandel @ 2003-03-15 16:27 UTC (permalink / raw)
  To: caml-list

On Fri, Mar 14, 2003 at 07:43:53PM -0600, Tushar Samant wrote:
> 02003-03-11 | Pierre Weis <pierre.weis@inria.fr> writes:
> > have to learn it. This may be the main drawback of Objective Caml:
> > there is no ``Objective Caml for dummies''. That may be the price to
> 
> Well said. I have had haphazard formal training in programming,
> and until I arrived at the idea of informally reasoning out type
> inference I essentially could not go beyond print_string(). This
> is a type of thing which can go in "Ocaml for Dummies". As another
> example, take type constructors. Here is their first occurrence in
> the proposed O'Reilly book:
> 
>   In contrast with tuples or records, which correspond to a Cartesian
>   product, the declaration of a sum type corresponds to a union of sets.
>   Different types (for example integers or character strings) are gathered
>   into a single type. The various members of the sum are distinguished by
>   -constructors-, which support on the one hand, as their name indicates,
>   construction of values of this type and on the other hand, thanks to
>   pattern matching, access to the components of these values. To apply
>   a constructor to an argument is to indicate that the value returned
>   belongs to this new type.
> 
> A programmer who is constantly asked to parse xml, make database
> queries etc at work is not going to be sympathetic to this.

Well, maybe it's better that he is not. :)

> And
> no considerations of why other ways of doing it lead to a stronger
> or weaker system are going to sway him. But a Dummies book, hand-
> waving a constructor away as a flag or label, might. The third and
> last example is the introduction of structures in the reference manual:
> 
>   A primary motivation for modules is to package together related
>   definitions (such as the definitions of a data type and associated
>   operations over that type) and enforce a consistent naming scheme
>   for these definitions. This avoids running out of names or acci-
>   dentally confusing names. Such a package is called a -structure-
>   and is introduced by the struct...end construct, which contains
>   an arbitrary sequence of definitions. The structure is usually
>   given a name with the module binding.


Well, I don't think it's a good idea to throw such (imho hard) stuff
away. A better presentation will be a way to go.

I'm happy to have books like the O'Reilley-book (even if it
sometimes sounds different, when I criticize it). They use
the language, which is necessary to explain something.
But it sometimes (or often) could be more well explained to
peiople who are not so familiar with this sort of thinking.

It's IMHO not a problem that there is to learn a lot.
The only problem IMHO is, if there are no texts and/or people,
who I can ask to go further.

When things are complicated,and different and unknown, then
it is not a good idea to oversimplify.
It's better, when explaining the complicated/new/unknown
in more detail.

So I had found some papers, not all covering my knowledge-level,
but each of them is interesting (some has helped me, others
may will help me later, when I have more experience/knowledge in
the FP-area).

These texts I have found:

 - The documentation, coming with OCaml (Reference != learning papers)
 - Tutorial: stephan.html (very good intro to start first steps!)
 - Caml quick reference guide (good idea, but layout could be better)
 - An introductional text, which has helped me a lot before the OCaml
   book in english was put on the server. I don't know who has written
   it, because the author has not written his name/mailaddres into it.
   The first two sentences in this paper: "This documentation is an
   introduction to ML programming, specifically for the OCaml
   implementation. In CS134a, we used C (and variations) to specify
   processes, monitors, semaphores, devices and more." (and so on)
   (Could be better, with a table of content and an index; but to start
   it's much better than the O'Reilley book, because of a lot of
   examples.)
   
 - O'Reilley-OCaml-book (good for gaining an overview on the language)

 - Didier Remy: Using, Understanding, and Unraveling The OCaml Language
   (Sometimes I understand some paragraphs. Good work, but is more
    a paper for the OCaml-gurus with theoretical background, but
    neverheless interesting and some example code is used there too.)
    If there are books, explaining how to go from imperative
    non-computer-studied person to a person who understands this
    text fully, please let me know...


There are a lot of papers, but there are too much gaps between
the one knowledge (and it's representation) and the other.
Filling the gaps would be a way, nut dumbing down!

Ciao,
   Oliver

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-15 16:27 [Caml-list] OCaml popularity Oliver Bandel
@ 2003-03-15 17:55 ` Sergey Goldgaber
  0 siblings, 0 replies; 57+ messages in thread
From: Sergey Goldgaber @ 2003-03-15 17:55 UTC (permalink / raw)
  To: Oliver Bandel, caml-list

--- Oliver Bandel <oliver@first.in-berlin.de> wrote:
>
>  - An introductional text, which has helped me a lot before the OCaml
>    book in english was put on the server. I don't know who has
>    written it, because the author has not written his name/mailaddres
>    into it.
>    The first two sentences in this paper: "This documentation is an
>    introduction to ML programming, specifically for the OCaml
>    implementation. In CS134a, we used C (and variations) to specify
>    processes, monitors, semaphores, devices and more." (and so on)
>    (Could be better, with a table of content and an index; but to
>    start it's much better than the O'Reilley book, because of a lot
of
>    examples.)

It looks like this is Jason Hickey's "Introduction to the Objective
Caml
Programming Language"


  --Sergey


__________________________________________________
Do you Yahoo!?
Yahoo! Web Hosting - establish your business online
http://webhosting.yahoo.com

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-10 23:48 ` Gerd Stolpmann
  2003-03-11  0:18   ` Brian Hurt
@ 2003-03-17 23:49   ` Graham Guttocks
  1 sibling, 0 replies; 57+ messages in thread
From: Graham Guttocks @ 2003-03-17 23:49 UTC (permalink / raw)
  To: Gerd Stolpmann; +Cc: caml-list

Gerd Stolpmann <info@gerd-stolpmann.de> wrote:
>
> I suppose it has to do with the label "functional language", and
> these languages are often seen as toys of academic
> people. I.e. nothing for the real programmer. Not really sexy.

If this is the case, I wonder why there are so many instructional
texts available for SML (a couple dozen probably).  Quite a few for
Haskell as well.  Only one (Cousineau & Mauny) for OCaml.  Rather
disappointing since OCaml seems more promising than any of these.

=====
Regards,
Graham

http://mobile.yahoo.com.au - Yahoo! Mobile
- Check & compose your email via SMS on your Telstra or Vodafone mobile.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-15  1:43     ` Tushar Samant
@ 2003-03-15  8:19       ` Andreas Eder
  0 siblings, 0 replies; 57+ messages in thread
From: Andreas Eder @ 2003-03-15  8:19 UTC (permalink / raw)
  To: Tushar Samant; +Cc: caml-list

Tushar Samant writes:
 > A Dummies
 > book abandons the responsibility of being truthful all the time,
 > and hence manages to communicate with harried, seat of the pants
 > programmers. You know that it's just this type--myself included--
 > which stands the most to benefit from a safe fast language.

I think dumbing down is not the right way (c) to go. It would be far
better to try to educate the harried, seat of the pants programmer,
than to cater to his perceived needs. There are already too many of
this kind and we definitely need better educated programmers; and I
mean educated, not trained!

'Andreas

-- 
Wherever I lay my .emacs, there´s my $HOME.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-11 10:23   ` Pierre Weis
  2003-03-11 14:27     ` Guillaume Marceau
  2003-03-11 19:02     ` Graham Guttocks
@ 2003-03-15  1:43     ` Tushar Samant
  2003-03-15  8:19       ` Andreas Eder
  2 siblings, 1 reply; 57+ messages in thread
From: Tushar Samant @ 2003-03-15  1:43 UTC (permalink / raw)
  To: Pierre Weis; +Cc: caml-list

02003-03-11 | Pierre Weis <pierre.weis@inria.fr> writes:
> have to learn it. This may be the main drawback of Objective Caml:
> there is no ``Objective Caml for dummies''. That may be the price to

Well said. I have had haphazard formal training in programming,
and until I arrived at the idea of informally reasoning out type
inference I essentially could not go beyond print_string(). This
is a type of thing which can go in "Ocaml for Dummies". As another
example, take type constructors. Here is their first occurrence in
the proposed O'Reilly book:

  In contrast with tuples or records, which correspond to a Cartesian
  product, the declaration of a sum type corresponds to a union of sets.
  Different types (for example integers or character strings) are gathered
  into a single type. The various members of the sum are distinguished by
  -constructors-, which support on the one hand, as their name indicates,
  construction of values of this type and on the other hand, thanks to
  pattern matching, access to the components of these values. To apply
  a constructor to an argument is to indicate that the value returned
  belongs to this new type.

A programmer who is constantly asked to parse xml, make database
queries etc at work is not going to be sympathetic to this. And
no considerations of why other ways of doing it lead to a stronger
or weaker system are going to sway him. But a Dummies book, hand-
waving a constructor away as a flag or label, might. The third and
last example is the introduction of structures in the reference manual:

  A primary motivation for modules is to package together related
  definitions (such as the definitions of a data type and associated
  operations over that type) and enforce a consistent naming scheme
  for these definitions. This avoids running out of names or acci-
  dentally confusing names. Such a package is called a -structure-
  and is introduced by the struct...end construct, which contains
  an arbitrary sequence of definitions. The structure is usually
  given a name with the module binding.

Since C programmers mean something else by structure, it would be
nice if there was a Dummies book which said that a structure is a
namespace which may contain types, values and exceptions. Perhaps
it's not--who cares, that's merely the truth about it. A Dummies
book abandons the responsibility of being truthful all the time,
and hence manages to communicate with harried, seat of the pants
programmers. You know that it's just this type--myself included--
which stands the most to benefit from a safe fast language.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
@ 2003-03-14 22:14 Daniel M. Albro
  0 siblings, 0 replies; 57+ messages in thread
From: Daniel M. Albro @ 2003-03-14 22:14 UTC (permalink / raw)
  To: caml-list


	Someone (sorry, deleted the email before I could use it to
respond) mentioned that they had thought that the first edition of
SICP used Lisp (this isn't true, by the way -- I used the first
edition when I took 6.001 way back when and it was Scheme).  Maybe
you were thinking of _The_Little_Lisper_, which has since changed
to _The_Little_Schemer_ (with the sequel _The_Seasoned_Schemer_).
That book is a pretty good introduction to functional programming,
by the way, albeit a bit mind-bending when it starts going into
Y-Combinators and stuff like that.  I still haven't managed to finish
_The_Seasoned_Schemer_.  They have a book called "_The_Little_MLer_"
that talks about ML and has a section on how to convert their code
into OCaml, but it's not really as good as the Scheme version; it
spends too much time on the specifics of ML, really.  Maybe that's
appropriate, but then it should be longer so they can get all of the
nice lambda calculus in.

-- 
Daniel M. Albro <albro@humnet.ucla.edu>

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-14 11:50                   ` Markus Mottl
@ 2003-03-14 15:38                     ` Oliver Bandel
  0 siblings, 0 replies; 57+ messages in thread
From: Oliver Bandel @ 2003-03-14 15:38 UTC (permalink / raw)
  To: caml-list

On Fri, Mar 14, 2003 at 12:50:13PM +0100, Markus Mottl wrote:
> On Fri, 14 Mar 2003, Michal Moskal wrote:
> > I don't believe replacing perl scripts with ocaml ones is The Right
> > Thing to do... Just because in simple cases perl or sh is going to be
> > twice as short. OCaml mainly favors programming in large.
> 
> "Short" <> "written quickly".

Yes, I agree here fully.

If you had asked me this last week, I would have
a different opinion.

But I now have seen this very impressive.


> OCaml is certainly more verbose than
> Perl or sh for scripting tasks, but this hardly adds to the development
> time.

But on the first view this is not to see!
I often thought, that verbosity is annoying,
and perls "short constructs" are useful
to achieve faster development.

I recently saw that this is not the case.

But I'm shure, that it is a very common
assumption....



> Writing down a function call instead of some funny Perl-operator
> only requires a second more, but makes parsing scripts much simpler
> for humans.
[...]

ACK.


Ciao,
   Oliver

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-14  6:33                 ` Michal Moskal
@ 2003-03-14 11:50                   ` Markus Mottl
  2003-03-14 15:38                     ` Oliver Bandel
  0 siblings, 1 reply; 57+ messages in thread
From: Markus Mottl @ 2003-03-14 11:50 UTC (permalink / raw)
  To: Michal Moskal; +Cc: Oliver Bandel, caml-list

On Fri, 14 Mar 2003, Michal Moskal wrote:
> I don't believe replacing perl scripts with ocaml ones is The Right
> Thing to do... Just because in simple cases perl or sh is going to be
> twice as short. OCaml mainly favors programming in large.

"Short" <> "written quickly". OCaml is certainly more verbose than
Perl or sh for scripting tasks, but this hardly adds to the development
time. Writing down a function call instead of some funny Perl-operator
only requires a second more, but makes parsing scripts much simpler
for humans.

Actually, though I have learnt it, I never use Perl: when I need to write
some really trivial script that just executes a couple of commands, I use
bash. If it's a bit less trivial, OCaml is already the better choice IMHO.

Regards,
Markus Mottl

-- 
Markus Mottl                                             markus@oefai.at
Austrian Research Institute
for Artificial Intelligence                  http://www.oefai.at/~markus

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-14 10:13               ` MikhailFedotov
@ 2003-03-14 10:30                 ` Johann Spies
  0 siblings, 0 replies; 57+ messages in thread
From: Johann Spies @ 2003-03-14 10:30 UTC (permalink / raw)
  To: caml-list

On Fri, Mar 14, 2003 at 01:13:29PM +0300, MikhailFedotov wrote:

> As a summary:
> 1. Introduction.
> 2. Examples.
> 3. Reference manual with examples somewhere (not just grammar).

With at least one simple example of the usage of every available
function/type/class/module in the reference manual please.  I think
the Turbo Pascal 7 reference manual is a good example of this.

Johann
-- 
Johann Spies          Telefoon: 021-808 4036
Informasietegnologie, Universiteit van Stellenbosch

     "Let your light so shine before men, that they may see 
      your good works, and glorify your Father which is in 
      heaven."         Matthew 5:16 

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* RE: [Caml-list] OCaml popularity
  2003-03-13 20:50             ` William Lovas
  2003-03-13 21:17               ` Oliver Bandel
@ 2003-03-14 10:13               ` MikhailFedotov
  2003-03-14 10:30                 ` Johann Spies
  1 sibling, 1 reply; 57+ messages in thread
From: MikhailFedotov @ 2003-03-14 10:13 UTC (permalink / raw)
  To: 'William Lovas', 'Oliver Bandel'; +Cc: caml-list

Hi!

> You're basic objection here is that O'Caml is not being
> taught in the same way that other programming languages have
> been taught in the past. Should it be?  Maybe O'Caml is
> different enough from other programming languages that it
> should be *taught* differently.

Key word is motivation. First visible results should be instant
and appealing in order to keep motivation. Simple programs
like "Hello world" are very important to keep motivation high.
All those samples ready to cut&paste.

As for the good practice, it's about simple tasks among the
more complex ones. The good example is "Concrete
Mathematics" by D.Knuth with its exercises, from trivial
to almost impossible - there is no single boring line.

If you forget about motivation to start (simple exersises), then it
doesn't really matter how sophiscated the language is by itself.

If you forget about motivation to progress (medum-difficulty
exersises, real tasks), then the reader will become bored.

If you forget about training how to use the language properly
for regular tasks (even just truncating the file after specified
position), then the reader will get the feeling of beautiful
academical language with no practical use. This is also
the case if all tasks were trivial and dedicated to learning
language constructs.

He will also become bored if someone will try to teach him
the theory behind the languge when all he wants is to learn
to use the language, preferrably by intuition (it is faster) using
examples.

As a summary:
1. Introduction.
2. Examples.
3. Reference manual with examples somewhere (not just grammar).

This is pretty enough... at least it works for me. :)

Mikhail


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-14  9:05         ` Ville-Pertti Keinonen
@ 2003-03-14  9:13           ` Daniel M. Albro
  0 siblings, 0 replies; 57+ messages in thread
From: Daniel M. Albro @ 2003-03-14  9:13 UTC (permalink / raw)
  To: Ville-Pertti Keinonen; +Cc: caml-list


	Well, I'm certainly learning a lot this way, anyway...
Might be useful stuff for a tutorial!  This continuation-
passing style here runs quite fast, by the way -- equivalent to the
original exception-for-loop suggestion:

real    0m30.056s
user    0m29.950s
sys     0m0.100s

On Fri, 2003-03-14 at 01:05, Ville-Pertti Keinonen wrote:
> > Break simulated by continuation passing (I think that's
> > what this is -- it looks like a call/cc to me, anyway)
> 
> Sort of, except that the continuation can't be used outside the 
> function called by escape.  Here's a different approach (this is 
> essentially a variation of the recursive style, because you need to 
> make sure the continuation is called as a tail call):
> 
> let _ =
>    let ary = [| 1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12 |] in
>    let rec loop f j =
>      if j = 10 || ary.(j) = 5 then f ()
>      else loop f (j + 1)
>    in
>      let rec outer i =
>        if i <= 1_000_000_000 then
>          loop (fun _ -> outer (i + 1)) 0
>      in
>        outer 1
> 
> This style is useful in some cases when you can write a significant 
> part of your program using continuations.
-- 
Daniel M. Albro <albro@humnet.ucla.edu>

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-14  5:49       ` Daniel M. Albro
@ 2003-03-14  9:05         ` Ville-Pertti Keinonen
  2003-03-14  9:13           ` Daniel M. Albro
  0 siblings, 1 reply; 57+ messages in thread
From: Ville-Pertti Keinonen @ 2003-03-14  9:05 UTC (permalink / raw)
  To: Daniel M. Albro; +Cc: caml-list


> Break simulated by continuation passing (I think that's
> what this is -- it looks like a call/cc to me, anyway)

Sort of, except that the continuation can't be used outside the 
function called by escape.  Here's a different approach (this is 
essentially a variation of the recursive style, because you need to 
make sure the continuation is called as a tail call):

let _ =
   let ary = [| 1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12 |] in
   let rec loop f j =
     if j = 10 || ary.(j) = 5 then f ()
     else loop f (j + 1)
   in
     let rec outer i =
       if i <= 1_000_000_000 then
         loop (fun _ -> outer (i + 1)) 0
     in
       outer 1

This style is useful in some cases when you can write a significant 
part of your program using continuations.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13 21:17               ` Oliver Bandel
  2003-03-13 22:01                 ` Brian Hurt
  2003-03-13 22:17                 ` Oliver Bandel
@ 2003-03-14  6:33                 ` Michal Moskal
  2003-03-14 11:50                   ` Markus Mottl
  2 siblings, 1 reply; 57+ messages in thread
From: Michal Moskal @ 2003-03-14  6:33 UTC (permalink / raw)
  To: Oliver Bandel; +Cc: caml-list

On Thu, Mar 13, 2003 at 10:17:02PM +0100, Oliver Bandel wrote:
> E.G. scripting... some I/O-stuff right from the beginning,
> and you can do some things, where you have used Perl before...

I don't believe replacing perl scripts with ocaml ones is The Right
Thing to do... Just because in simple cases perl or sh is going to be
twice as short. OCaml mainly favors programming in large.

I know OCaml quite well, but still do scripting in perl or sh. Example:
extended lambda calculi interpreter written in OCaml + test suite
written in perl.

-- 
: Michal Moskal ::::: malekith/at/pld-linux.org :  GCS {C,UL}++++$ a? !tv
: PLD Linux ::::::: Wroclaw University, CS Dept :  {E-,w}-- {b++,e}>+++ h

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
       [not found]     ` <15985.1204.814698.939943@h00045a4799d6.ne.client2.attbi.com>
@ 2003-03-14  5:49       ` Daniel M. Albro
  2003-03-14  9:05         ` Ville-Pertti Keinonen
  0 siblings, 1 reply; 57+ messages in thread
From: Daniel M. Albro @ 2003-03-14  5:49 UTC (permalink / raw)
  To: caml-list


	I imagine everyone was laughing at me when they saw the timing
tests I did -- they weren't doing the same thing!  D'oh.  Here they are
again with comparable code (the conclusion is basically the same,
though -- use tail recursive functions if you want speed in OCaml,
at least if you're going to be exiting the loop early):

Break simulated with exceptions:
----------------------------------------------
exception Break

let _ =
  let ary = [|1;2;3;4;5;6;7;8;9;10;11;12|] in
    for i = 1 to 1_000_000_000 do
      try
        for j = 0 to 9 do
          if ary.(j) = 5 then
            raise Break
        done
      with Break -> ()
    done

real    0m35.123s
user    0m34.600s
sys     0m0.120s
-----------------------------------------------

Break by causing the while test to fail
-----------------------------------------------
let _ =
  let ary = [|1;2;3;4;5;6;7;8;9;10;11;12|] in
  let j = ref 0 in
    for i = 1 to 1_000_000_000 do
      j := 0;
      while !j < 10 do
        if ary.(!j) = 5 then
          j := 10
        else
          incr j
      done
    done

real    0m40.135s
user    0m39.600s
sys     0m0.200s
------------------------------------------------

Break simulated by tail recursive functions
------------------------------------------------
let _ =
  let ary = [|1;2;3;4;5;6;7;8;9;10;11;12|] in
  let rec loop j =
    if j = 10 then 
      ()
    else if ary.(j) = 5 then
      ()
    else
      loop (j + 1)
  in
    for i = 1 to 1_000_000_000 do
      loop 0
    done

real    0m27.075s
user    0m26.940s
sys     0m0.120s
------------------------------------------------

Break simulated by continuation passing (I think that's
what this is -- it looks like a call/cc to me, anyway)
------------------------------------------------
let escape body =
  let module Fail = struct exception T end in
  let datum = ref None in
  let throw v =
    begin
      datum := Some v;
      raise Fail.T
    end
  in
    try
      body throw
    with
        Fail.T -> (match !datum with Some v -> v | None -> assert false)


let _ =
  let ary = [|1;2;3;4;5;6;7;8;9;10;11;12|] in
    for i = 1 to 1_000_000_000 do
      escape (fun exit ->
                for j = 0 to 9 do
                  if ary.(j) = 5 then exit()
                done)
    done

real    1m50.006s
user    1m49.470s
sys     0m0.350s
------------------------------------------------


On Thu, 2003-03-13 at 14:22, Neel Krishnaswami wrote:
> Daniel M. Albro writes:
> > 
> > Hmm...  Apparently I'm a liar.  OK, I take it back.  Doing your
> > version 1 billion times takes 25 seconds on my machine, and my
> > version takes 29 seconds.  I still think a break statement would
> > look nicer.
> 
> Use the power of higher order functions!
> 
> let escape body =
>   let module Fail = struct exception T end in
>   let datum = ref None in
>   let throw v =
>     begin
>       datum := Some v;
>       raise Fail.T
>     end
>   in
>   try
>     body throw
>   with
>     Fail.T -> (match !datum with Some v -> v | None -> assert false)
> 
> Now you can bail out of any computations early, by using an escape:
> 
> escape (fun exit ->
>   for i = 1 to 100 do
>     Printf.printf ".";
>     if i = 25 then exit();
>   done)
> 
> What's nice about this is that it gives you a multi-level break, and
> that you can return values from it, too. Suppose you want to multiply
> the numbers in a list; you can use an escape to stop computing if we
> ever see a 0 in the list.
> 
> let multiply_ints lst =
>   escape (fun exit -> 
>     List.fold_left
>       (fun acc n -> if n = 0 then exit 0 else n * acc)
>       1 
>       lst)
-- 
Daniel M. Albro <albro@humnet.ucla.edu>

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13 21:17               ` Oliver Bandel
  2003-03-13 22:01                 ` Brian Hurt
@ 2003-03-13 22:17                 ` Oliver Bandel
  2003-03-14  6:33                 ` Michal Moskal
  2 siblings, 0 replies; 57+ messages in thread
From: Oliver Bandel @ 2003-03-13 22:17 UTC (permalink / raw)
  To: caml-list

Hi,

well, my english... :(

On Thu, Mar 13, 2003 at 10:17:02PM +0100, Oliver Bandel wrote:
> Well, for unpatient people, this is a very long time!
> (Even if you have not time to work every day with
   ^^^^\
    especially

> that language and that book!)

Ciao,
   Oliver   ( at this time exploring the Stack-module... :) )

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13 21:17               ` Oliver Bandel
@ 2003-03-13 22:01                 ` Brian Hurt
  2003-03-13 22:17                 ` Oliver Bandel
  2003-03-14  6:33                 ` Michal Moskal
  2 siblings, 0 replies; 57+ messages in thread
From: Brian Hurt @ 2003-03-13 22:01 UTC (permalink / raw)
  To: Oliver Bandel; +Cc: caml-list

On Thu, 13 Mar 2003, Oliver Bandel wrote:

> But if people have to wait too long - who has the time today to invest
> so much time, if not a researcher or unemployed (or workoholic, who
> comes home with rectangular eyes and again take seat in front of the
> computer?)


Um, those of us who actually *care* about our craft, and realize that if 
we just learn what our job needs us to know *right now* enough to have us 
take time off to be taught it, we'll become dinosaurs?  And/or 
unemployeed, when we're replaced by someone who *did* go out and learn the 
hot new technology?

I'm assuming you meant this humorously- but it's a serious question I've 
been asked myself.

Brian


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13 21:29 ` Karl Zilles
  2003-03-13 21:36   ` Daniel M. Albro
  2003-03-13 21:42   ` Daniel M. Albro
@ 2003-03-13 21:53   ` Brian Hurt
  2 siblings, 0 replies; 57+ messages in thread
From: Brian Hurt @ 2003-03-13 21:53 UTC (permalink / raw)
  To: Karl Zilles; +Cc: Daniel M. Albro, caml-list

On Thu, 13 Mar 2003, Karl Zilles wrote:

> Daniel M. Albro wrote:
> > imperative side of the language will get fleshed out a bit with some
> > expanded loop features like break statements, 
> 
> You can always implement a break statement as an exception:
> 
> exception Break;;
> 
> try for i = 1 to 10 do
> 	if i == 5 then raise Break
> done with Break -> ();;
> 
> As an exception, you could (if you wanted) include special case handling 
> for the break, or create a more aptly named exception and pass through 
> data.

How efficient is this vr.s rewritting the loop as a tail recursion?  I.e.:

    let rec loop idx = 
        if (idx == 10) then () (* exit the loop *)
        else if special_case(idx) then () (* early exit of the loop *)
        else
        begin
            foo(idx);
            loop (idx + 1)
        end
    in
    loop 1

Naturally, instead of returning unit, the function can return whatever.
All for loops can be rewritten as while loops, and all while loops can be
rewritten as tail recursive functions.

What I'm worried about is the costs of throwing an exception.  This isn't
C++ (where throwing an exception needs to unroll the stack, calling all
the correct destructors, and can therefor be quite expensive), but that
doesn't mean exceptions are 'cheap'.  Exceptions, by definition, are
exceptional.  Were I writting the optimizer, I'd freely assume that any
code path that ends in throwing an exception is not a critical path and 
can be slow.

Brian


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13 21:29 ` Karl Zilles
  2003-03-13 21:36   ` Daniel M. Albro
@ 2003-03-13 21:42   ` Daniel M. Albro
       [not found]     ` <15985.1204.814698.939943@h00045a4799d6.ne.client2.attbi.com>
  2003-03-13 21:53   ` Brian Hurt
  2 siblings, 1 reply; 57+ messages in thread
From: Daniel M. Albro @ 2003-03-13 21:42 UTC (permalink / raw)
  To: Karl Zilles; +Cc: caml-list


	Hmm...  Apparently I'm a liar.  OK, I take it back.  Doing your
version 1 billion times takes 25 seconds on my machine, and my version
takes 29 seconds.  I still think a break statement would look nicer.

					- Dan


On Thu, 2003-03-13 at 13:29, Karl Zilles wrote:
> Daniel M. Albro wrote:
> > imperative side of the language will get fleshed out a bit with some
> > expanded loop features like break statements, 
> 
> You can always implement a break statement as an exception:
> 
> exception Break;;
> 
> try for i = 1 to 10 do
> 	if i == 5 then raise Break
> done with Break -> ();;
> 
> As an exception, you could (if you wanted) include special case handling 
> for the break, or create a more aptly named exception and pass through 
> data.
-- 
Daniel M. Albro <albro@humnet.ucla.edu>

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13 21:29 ` Karl Zilles
@ 2003-03-13 21:36   ` Daniel M. Albro
  2003-03-13 21:42   ` Daniel M. Albro
  2003-03-13 21:53   ` Brian Hurt
  2 siblings, 0 replies; 57+ messages in thread
From: Daniel M. Albro @ 2003-03-13 21:36 UTC (permalink / raw)
  To: Karl Zilles; +Cc: caml-list


	Yeah, I know, but in time testing I've noticed (I think) that

exception Break;;
try for i = 1 to 10 do
	if i = 5 then raise Break
done with Break -> ();;

	is slower than the (ugly) equivalent

	let i = ref 1 in
	while !i <= 10 do
		if !i = 5 then i := 11;
		incr i
	done;;


On Thu, 2003-03-13 at 13:29, Karl Zilles wrote:
> Daniel M. Albro wrote:
> > imperative side of the language will get fleshed out a bit with some
> > expanded loop features like break statements, 
> 
> You can always implement a break statement as an exception:
> 
> exception Break;;
> 
> try for i = 1 to 10 do
> 	if i == 5 then raise Break
> done with Break -> ();;
> 
> As an exception, you could (if you wanted) include special case handling 
> for the break, or create a more aptly named exception and pass through 
> data.
-- 
Daniel M. Albro <albro@humnet.ucla.edu>

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13  7:09 Daniel M. Albro
  2003-03-13 16:48 ` Neel Krishnaswami
@ 2003-03-13 21:29 ` Karl Zilles
  2003-03-13 21:36   ` Daniel M. Albro
                     ` (2 more replies)
  1 sibling, 3 replies; 57+ messages in thread
From: Karl Zilles @ 2003-03-13 21:29 UTC (permalink / raw)
  To: Daniel M. Albro; +Cc: caml-list

Daniel M. Albro wrote:
> imperative side of the language will get fleshed out a bit with some
> expanded loop features like break statements, 

You can always implement a break statement as an exception:

exception Break;;

try for i = 1 to 10 do
	if i == 5 then raise Break
done with Break -> ();;

As an exception, you could (if you wanted) include special case handling 
for the break, or create a more aptly named exception and pass through 
data.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13 20:50             ` William Lovas
@ 2003-03-13 21:17               ` Oliver Bandel
  2003-03-13 22:01                 ` Brian Hurt
                                   ` (2 more replies)
  2003-03-14 10:13               ` MikhailFedotov
  1 sibling, 3 replies; 57+ messages in thread
From: Oliver Bandel @ 2003-03-13 21:17 UTC (permalink / raw)
  To: caml-list

On Thu, Mar 13, 2003 at 03:50:11PM -0500, William Lovas wrote:
> On Thu, Mar 13, 2003 at 10:52:32AM +0100, Oliver Bandel wrote:
> > I/O is on page 76, where imperative programming
> > is explained.
> > 
> > When looking into K&R's C book, it's in the first chapter
> > on the first page to create a feedback from the machine
> > with the well-known "hello world"-example...
> 
> Well, since C lacks a top-level read-eval-print loop, being able to
> do I/O is crucially important early on.  Less so with O'Caml -- one
> can get right into the interesting bits of the programming language
> without having to know a wink of I/O.  The necessary evils like I/O
> can wait 'til a little bit later... like Chapter 3 :)

Well, for unpatient people, this is a very long time!
(Even if you have not time to work every day with
that language and that book!)


> 
> Plus, the top-level loop approach introduces a number of important
> concepts early on, like expressions, values, and types.
> 
> > When you have a functional language and say: Yes, functional
> > programming is so genious, but get the I/O not before
> > the chapter about imperative programming, then it looks
> > not very honestly...
> > 
> > But adding the FP-features as a "what other languages have not"
> > (or not so clear) later, this might (not proven it;-)) be
> > a beter approach in making the language interesting.
> 
> You're basic objection here is that O'Caml is not being taught in the
> same way that other programming languages have been taught in the past.
> Should it be?  Maybe O'Caml is different enough from other programming
> languages that it should be *taught* differently.

Yes, I have thought about that too.
Maybe programmers are - when looking at OCaml's
imperative features - not very impressed (namespace
of variables (records,..)).

Well, but on the other side, people are often very unpatient.
If the question is, to spread OCaml more, then people want
to have results fast.

E.G. scripting... some I/O-stuff right from the beginning,
and you can do some things, where you have used Perl before...

So, waiting with this until Chapter 3 may cause people
to stop learning the new language...


> 
> I suppose it's arguable, though, that O'Caml might be more popular if
> its teaching style catered more to peoples' expectations.

Yes. Shure.

But if people have to wait too long - who has the time
today to invest so much time, if not a researcher or
unemployed (or workoholic, who comes home with rectangular
eyes and again take seat in front of the computer?)

Ciao,
   Oliver

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
       [not found]           ` <20030313095232.GC347@first.in-berlin.de>
@ 2003-03-13 20:50             ` William Lovas
  2003-03-13 21:17               ` Oliver Bandel
  2003-03-14 10:13               ` MikhailFedotov
  0 siblings, 2 replies; 57+ messages in thread
From: William Lovas @ 2003-03-13 20:50 UTC (permalink / raw)
  To: Oliver Bandel; +Cc: caml-list

On Thu, Mar 13, 2003 at 10:52:32AM +0100, Oliver Bandel wrote:
> I/O is on page 76, where imperative programming
> is explained.
> 
> When looking into K&R's C book, it's in the first chapter
> on the first page to create a feedback from the machine
> with the well-known "hello world"-example...

Well, since C lacks a top-level read-eval-print loop, being able to
do I/O is crucially important early on.  Less so with O'Caml -- one
can get right into the interesting bits of the programming language
without having to know a wink of I/O.  The necessary evils like I/O
can wait 'til a little bit later... like Chapter 3 :)

Plus, the top-level loop approach introduces a number of important
concepts early on, like expressions, values, and types.

> When you have a functional language and say: Yes, functional
> programming is so genious, but get the I/O not before
> the chapter about imperative programming, then it looks
> not very honestly...
> 
> But adding the FP-features as a "what other languages have not"
> (or not so clear) later, this might (not proven it;-)) be
> a beter approach in making the language interesting.

You're basic objection here is that O'Caml is not being taught in the
same way that other programming languages have been taught in the past.
Should it be?  Maybe O'Caml is different enough from other programming
languages that it should be *taught* differently.

I suppose it's arguable, though, that O'Caml might be more popular if
its teaching style catered more to peoples' expectations.

William

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13  7:09 Daniel M. Albro
@ 2003-03-13 16:48 ` Neel Krishnaswami
  2003-03-13 21:29 ` Karl Zilles
  1 sibling, 0 replies; 57+ messages in thread
From: Neel Krishnaswami @ 2003-03-13 16:48 UTC (permalink / raw)
  To: Daniel M. Albro; +Cc: caml-list

Daniel M. Albro writes:
> 
> I also hope that the stream parsing [< >] syntax stuff will get put
> back into the main language and made parseable by ocamldep [...]

You can already do this! Just add a '-pp camlp4o' argument to the
ocamldep command line, like this:

  ocamldep -pp camlp4o [whatever] > .depend

-- 
Neel Krishnaswami
neelk@alum.mit.edu

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13 14:39 [oliver: Re: [Caml-list] OCaml popularity] Oliver Bandel
@ 2003-03-13 16:35 ` Michael Schuerig
  0 siblings, 0 replies; 57+ messages in thread
From: Michael Schuerig @ 2003-03-13 16:35 UTC (permalink / raw)
  To: caml-list

On Thursday 13 March 2003 15:39, Oliver Bandel wrote:

> Well, in GUIs there OO does makes sense.
> But using a more functional approach might help here too.

Yes, "might". But apparently, there's currently no rational reason to 
prefer FP over OO for GUIs. 

> For GUIs OO might be a good choice; but as long as it is
> not tested that FP doesn't help here, I will insist on
> such a solution.

If your mind is set for adventure, you can hope for it and go FP full 
hog. As a general advices this would be irresponsible.


> > [Typical database + GUI enterprise applications]
> >
> > > > Could OCaml in this area bring such a big improvement
> > > > over, say, Java and J2EE?
> > >
> > > See above.
> >
> > No, unfortunately not. You speculate a lot, but don't provide any
> > usable solutions.
>
> When there are hundreds of FP-programmers do not offer solutions
> (not counted the one haskell-approach),
> and many-thousands of OO-programmers are throwing around their
> OO-mess, how should I (not computer science studied; have studied
> electrical engeneering) provide a solution?

"OO-mess"?
(1) Would you be able to distinguish a good OO-solution _that you don't 
understand_ from a bad OO-solution?
(2) Don't expect good OO to be any easier than good FP.
(3) There *are* good OO-solutions for UI programming. Why are you 
convinced that there are even better FP ones? Currently there don't 
seem to be, otherwise I'd like to learn about them. Ideally, such an FP 
solution would be not only just as good as the OO counterpart, but 
instead would be markedly better. It's not much help, if one can say, 
"Look, finally I can do just the same as you".

> When looking at the code, I know what's good and wrong,

> Writing in FP is like having functions, that behave
> determined; when looking at OO-stuff, it looks like
> a stochastical process.

Are you comparing code that does the same? Same task? Same complexity?


> > Being important is an interesting property in a research context.
> > It doesn't make a language popular.
>
> I'm now a t a point, where the popularity is not so much a matter
> to me. I want to learn and to use that language.
> If other people want not, it's their problem.

Ah, well, but this thread is not concerned with you personally. It 
started with someone's wish of OCaml being more popular. I guess, the 
point I'm trying to make is that FP/OCaml won't become more popular in 
an area where it's only just as good as established OO languages and 
techniques.


> If you had asked me this in the beginnings of my OCaml-
> journey, I would have said (and I had said that), that
> I think, that OCaml might be good for larger projects,
> but not for scrippting.
>
> But even there it is better!

So, then let's push it there.


Michael

-- 
Michael Schuerig                All good people read good books
mailto:schuerig@acm.org         Now your conscience is clear
http://www.schuerig.de/michael/ --Tanita Tikaram, "Twist In My Sobriety"

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13  8:02                 ` Alessandro Baretta
@ 2003-03-13 10:23                   ` Michael Schuerig
  0 siblings, 0 replies; 57+ messages in thread
From: Michael Schuerig @ 2003-03-13 10:23 UTC (permalink / raw)
  To: caml-list

On Thursday 13 March 2003 09:02, Alessandro Baretta wrote:
> Michael Schuerig wrote:
> > On Thursday 13 March 2003 00:13, Martin Weber wrote:
> >
> >
[database + GUI variety enterprise applications]
> > I've been working on this kind of software for a couple of years
> > and can't say that I'm particularly attracted to it. To be sure, I
> > recognize that there are interesting aspects to it, but it's not
> > what I myself find interesting. Also, as I said before, I don't see
> > that OCaml provides a decisive advantage for *this* kind of
> > software.
>
> Actually, I must say that it does provide THE decisive
> advantage over all other tools I reviewed, at least in terms
> of Web applications. After developing the Xcaml sytem, which
> is currently on Sourceforge--and wanting a little bugfix
> update, coming up--my company is now able to release a new
> custom "enterprise application" to the customer in more or
> less one week's time.

I'm not familiar with the kind of project that can be done from start to 
finish that short a time. I just can't say how common they are. But 
anyway, great if OCaml can give such a boost, there.

My experience is from projects eating up several person years of effort. 
There coding speed isn't necessarily the limiting factor.

Michael

-- 
Michael Schuerig                All good people read good books
mailto:schuerig@acm.org         Now your conscience is clear
http://www.schuerig.de/michael/ --Tanita Tikaram, "Twist In My Sobriety"

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13  2:15         ` William Lovas
  2003-03-13  3:44           ` Graham Guttocks
@ 2003-03-13  9:31           ` Richard W.M. Jones
       [not found]           ` <20030313095232.GC347@first.in-berlin.de>
  2 siblings, 0 replies; 57+ messages in thread
From: Richard W.M. Jones @ 2003-03-13  9:31 UTC (permalink / raw)
  To: caml-list

On Wed, Mar 12, 2003 at 09:15:17PM -0500, William Lovas wrote:
> What about the O'Reilly book, "Developing Applications With Objective
> Caml"?  It's not perfect yet, but the preliminary translation from the
> French is available at:
> 
>     http://caml.inria.fr/oreilly-book/html/index.html
> 
> Is this the sort of thing you're looking for?

No offence intended to the authors, but it has to be said that I
thought it an entirely unsuitable introduction to the language.  Take
a look at the section on Input/Output channels for a good (ie. bad)
example. It takes all the way through to the middle of chapter 3
before we get this section which actually tells you how to do
something practical with the language. Then to find that the
introduction to I/O channels is next to useless - I could find out the
same stuff by reading the header file. At least there's a couple of
rather artificial examples.

Rich.

-- 
Richard Jones, Red Hat Inc. (London, UK) http://www.redhat.com/software/ccm
http://www.annexia.org/ Freshmeat projects: http://freshmeat.net/users/rwmj
MAKE+ is a sane replacement for GNU autoconf/automake. One script compiles,
RPMs, pkgs etc. Linux, BSD, Solaris. http://www.annexia.org/freeware/makeplus/

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-11 19:02     ` Graham Guttocks
  2003-03-12 17:12       ` Richard W.M. Jones
@ 2003-03-13  8:09       ` Pierre Weis
  1 sibling, 0 replies; 57+ messages in thread
From: Pierre Weis @ 2003-03-13  8:09 UTC (permalink / raw)
  To: Graham Guttocks; +Cc: pierre.weis, caml-list

> Pierre Weis <pierre.weis@inria.fr> wrote:
> >
> > This may be the main drawback of Objective Caml: there is no
> > ``Objective Caml for dummies''. That may be the price to pay to use
> > a powerful and theoretically well-founded language.
> 
> Do you mean that such a book could not be written, or simply that it
> just has not been written yet?  I personally would like to see an
> ``Objective Caml for dummies'' as the available introductory material
> (in English) is pretty poor IMO.

I tried a lot to figure out what such a book could be; unfortunately I
still don't know.

> > learning Caml is indeed profitable to the way you deal with
> > programming problems, but on the other hand, yes, it is not so easy
> 
> In http://caml.inria.fr/FAQ/general-eng.html you said:
> 
> ``Caml is a programming language, easy to learn, easy to use''.
> 
> So is it easy or not easy?
>
> Graham
> 
> http://mobile.yahoo.com.au - Yahoo! Mobile
> - Check & compose your email via SMS on your Telstra or Vodafone mobile.

Oups! Well spotted :)

Hence, I should be a bit more precise: my feeling is that Caml is easy
to learn (and indeed in some sense, I think it is a true pleasure to
learn Caml). But, as I tried to say in the preceeding message, it is
also mandatory to learn it. In other terms, grasping Caml needs some
efforts from you. It is not difficult or painful but you must do this
effort. So, on the one hand, it is not difficult which means «it's
easy». On the other hand, you have to think and learn some new
concepts; a lot of people consider this kind of activity as hard and
tedious, in a word «difficult»; so that, for them, «it's not so easy».

I hope this is clearer. In some sense the book we should write is not
«Caml for dummies» but something like «Caml for the curious» or «Caml
for the voluntary learners».

Thank you for your interesting feed-back.

Best regards,

Pierre Weis

INRIA, Projet Cristal, Pierre.Weis@inria.fr, http://pauillac.inria.fr/~weis/


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 23:35               ` Michael Schuerig
@ 2003-03-13  8:02                 ` Alessandro Baretta
  2003-03-13 10:23                   ` Michael Schuerig
  0 siblings, 1 reply; 57+ messages in thread
From: Alessandro Baretta @ 2003-03-13  8:02 UTC (permalink / raw)
  To: Michael Schuerig, Ocaml



Michael Schuerig wrote:
> On Thursday 13 March 2003 00:13, Martin Weber wrote:
> 
> 
> I've been working on this kind of software for a couple of years and 
> can't say that I'm particularly attracted to it. To be sure, I 
> recognize that there are interesting aspects to it, but it's not what I 
> myself find interesting. Also, as I said before, I don't see that OCaml 
> provides a decisive advantage for *this* kind of software.

Actually, I must say that it does provide THE decisive 
advantage over all other tools I reviewed, at least in terms 
of Web applications. After developing the Xcaml sytem, which 
is currently on Sourceforge--and wanting a little bugfix 
update, coming up--my company is now able to release a new 
custom "enterprise application" to the customer in more or 
less one week's time.

The Xcaml system, which is basically nothing other than 
XML/HTML-embedded Ocaml, is giving us the edge to give our 
customers whatever they ask for the moment they ask for it.

I think that Ocaml is a little more than the "the tool of 
choice for the discriminating hacker": it's tool of choice 
for professional business software development, at least if 
your employees are endowed with a measure of cognitive 
abilities. It does take a little thinking to get the hang of 
Ocaml--and Xcaml equivalently--but not that much after all. 
Hey, it's an imperative language at the end!

Alex

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
@ 2003-03-13  7:09 Daniel M. Albro
  2003-03-13 16:48 ` Neel Krishnaswami
  2003-03-13 21:29 ` Karl Zilles
  0 siblings, 2 replies; 57+ messages in thread
From: Daniel M. Albro @ 2003-03-13  7:09 UTC (permalink / raw)
  To: caml-list


	I thought I might comment a bit on this thread as a recent
learner of OCaml, which I've finally managed to learn at least well
enough to write a nice (in my opinion) MCFG (multiple
context free grammar) chart parser in it.  I don't think the language is
inherently any more difficult to learn than any other (well, maybe
difficult to learn ALL of), but for non-French speakers the lack of
introductory material is a problem.  I tried off and on (mostly
off) to learn the language for a year or two before getting it, and
the thing that allowed me to easily learn the language was the
recent translation of the O'Reilly book into English.  If they
ever publish the thing in English (I guess there's no agreement to
do so), I think the language will begin to take off outside of
France, because of what I think is the language's natural nitch -- it's
a rapid prototyping language (by which I just mean that it's a very high
level language and takes care of garbage collecting, etc.) that produces
fast code.  Lots of recent converts have been brought in
for that very reason, mostly by Doug Bagley's language comparison
page.

	Of course there are areas where the language or its development
environment might be improved, and hopefully this would help with
the popularity problem -- the debugger is rather nonintuitive and could
use random extra features; I've found it a bit difficult to work with. 
I also hope that the stream parsing [< >] syntax stuff will get put back
into the main language and made parseable by ocamldep, that the
imperative side of the language will get fleshed out a bit with some
expanded loop features like break statements, and that someone will do a
wxWindows port.  But these are minor points.  The main thing is to
keep pushing at the compiled code speed, availability of nice
libraries, and good development environment that the language already
has.  Oh, and to advertise them!

-- 
Daniel M. Albro <albro@humnet.ucla.edu>

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-13  2:15         ` William Lovas
@ 2003-03-13  3:44           ` Graham Guttocks
  2003-03-13  9:31           ` Richard W.M. Jones
       [not found]           ` <20030313095232.GC347@first.in-berlin.de>
  2 siblings, 0 replies; 57+ messages in thread
From: Graham Guttocks @ 2003-03-13  3:44 UTC (permalink / raw)
  To: William Lovas; +Cc: caml-list

William Lovas <wlovas@stwing.upenn.edu> wrote: 

> What about the O'Reilly book, "Developing Applications With
> Objective Caml"?

[...]

> Like i said, it's not quite ideal at this point, but i'm surprised
> nobody's mentioned it yet.

I'm not that surprised.  I got nothing out of the book when I tried to
read it.  It reads like a reference manual, so it may be of more use
once I've learned the language, but it's not an adequate introductory
text IMO.

Despite its brevity, I got more out of:
http://caml.inria.fr/FAQ/stephan.html

Then I did the first several sections of the O'Reilly translation.
This clear, explanatory style was much easier to digest.

=====
Regards,
Graham

http://mobile.yahoo.com.au - Yahoo! Mobile
- Check & compose your email via SMS on your Telstra or Vodafone mobile.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 17:12       ` Richard W.M. Jones
  2003-03-12 18:08         ` Alwyn Goodloe
  2003-03-12 23:18         ` Daniel Bünzli
@ 2003-03-13  2:15         ` William Lovas
  2003-03-13  3:44           ` Graham Guttocks
                             ` (2 more replies)
  2 siblings, 3 replies; 57+ messages in thread
From: William Lovas @ 2003-03-13  2:15 UTC (permalink / raw)
  To: caml-list

On Wed, Mar 12, 2003 at 05:12:43PM +0000, Richard W.M. Jones wrote:
> On Wed, Mar 12, 2003 at 08:02:30AM +1300, Graham Guttocks wrote:
> > Do you mean that such a book could not be written, or simply that it
> > just has not been written yet?  I personally would like to see an
> > ``Objective Caml for dummies'' as the available introductory material
> > (in English) is pretty poor IMO.
> 
> Someone else actually said it well on this list a while back. There
> is no "Programming Perl"-equivalent for OCaml.

What about the O'Reilly book, "Developing Applications With Objective
Caml"?  It's not perfect yet, but the preliminary translation from the
French is available at:

    http://caml.inria.fr/oreilly-book/html/index.html

Is this the sort of thing you're looking for?

> And please don't start by telling me about the lambda calculus or
> higher-order functions.

The O'Reilly book starts in Chapter 2 with the basics of functional
programming.  This makes sense because that's really what sets O'Caml
apart from other more mainstream languages.

> Start by telling me how to read and write files.

Chapter 3 goes into the imperative aspects, including I/O.

> How to draw a nice picture

Chapter 5: The Graphics Interface.

> Go on to tell me how to access my SQL database from an
> OCaml application server.

Not quite -- but Chapter 6 has several example applications, including one
that models a simple database.

The rest of the book has a very practical feel to it, constantly grounding
itself in real-world examples and applications.


Like i said, it's not quite ideal at this point, but i'm surprised nobody's
mentioned it yet.  Would it help O'Caml's cause, do you think, if O'Reilly
were to polish this up and publish it?

cheers,
William

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* [Caml-list] OCaml popularity
  2003-03-12 23:53 [oliver: Re: [Caml-list] OCaml popularity] Oliver Bandel
@ 2003-03-13  1:34 ` Michael Schuerig
  0 siblings, 0 replies; 57+ messages in thread
From: Michael Schuerig @ 2003-03-13  1:34 UTC (permalink / raw)
  To: caml-list

On Thursday 13 March 2003 00:53, Oliver Bandel wrote:

[misadventure with Tk]
> But: I found out that this terrible OO-stuff is - again -
> a horror!

Are you sure the problem was with the OO part? It's hard to assess this, 
without knowing how well-versed you are in OO. As little as I know Tk, 
it doesn't make construction of a complex UI for a complex application 
particularly easy, but it doesn't make it impossible, either. Java's 
Swing, for all it's faults, does a lot for UIs that are well-structured 
in themselves and well-separated from the application core. More or 
less, it comes down to variations on the MVC (Model-View-Controller) 
pattern.

In effect, all I can say is that OO in itself doesn't get in the way -- 
rather, in my opinion, it helps a lot. Just don't expect Good OO 
Programming to be any easier than Good O'Caml Programming.

Recommendation: "Agile Software Development" by Robert C. Martin 
(Prentice-Hall, 2003). See 
http://www.objectmentor.com/resources/articleIndex

> (I have seen mess in Tcl/Tk-programming as well as
>  in OO-stuff for other applications (that was Java-stuff),
>  at least if the objects were splitted into too small
>  pieces (design-question; OO-gurus may tell you more abot this
>  problem)).

No guru here, but someone who thinks it's a good idea to split things 
into individual pieces that each do a single thing and can be tested 
separately.


> If there would be a more FP-like approach to GUI-programming
> - and that is what you have mentioned above with "what OCaml
> can contribute to GUI-programming" - then this would help
> a lot.

[GUI ideas snipped]

You're mostly dealing with the (comparatively) easy part: visual 
appearance. The hard part is setting things in motion: Reacting to user 
inputs and actions. Displaying data consistently (even after changes 
done in another place).

There are broadly tested and published ways of dealing with GUIs in the 
OO way. MVC, which I already mentioned, is the arch-pattern in this 
regard. Common OO languages help, as the idea of reactive objects that 
handle messages is natural to them.

I've only had very little exposure to purely-functional UIs. Several 
years ago I looked into how GUIs are done in Clean. It was interesting, 
possibly mind-expanding -- but, at least to me, far from intuitive.


>  - trees/hashtables/trees-of-hashtables which binds GUI-objects
>    to it's *function*s (if a GUI-object would be handled like
>    functions in FPLs, then you may use one button as a parameter
>    for a menue (or vice versa).... => higher-order /functional)
>    GUI-objects; GUI-objects as first-citizens...)

Have a look at this overview of the Swing architecture
http://java.sun.com/products/jfc/tsc/articles/architecture/


[Typical database + GUI enterprise applications]
> > Could OCaml in this area bring such a big improvement
> > over, say, Java and J2EE?
>
> See above.

No, unfortunately not. You speculate a lot, but don't provide any usable 
solutions. Not that you're required to, of course. But current OO 
languages do have proven ways of dealing with the problems you've 
encountered.

It's not my intention to disparage OCaml! But I'd like to point out that 
there currently doesn't seem to be a reason to believe that OCaml just 
needs some more libs and app servers to make a combo that's 
*decisively* superior to J2EE (and similar) for a class of very common 
applications.


> > Or are there other -- niche? -- areas where
> > the advantages OCaml provides are far more important?
>
> There are many areas, where OCaml could be important.

Being important is an interesting property in a research context. It 
doesn't make a language popular. The practically interesting areas are 
those, where OCaml provides a significant advantage over other 
languages. These may well be areas deserving of the moniker "difficult 
computing" (as quoted by Xavier in this thread). As a case in point, I 
remember Markus Mottl explaining recently in comp.lang.functional ("AI 
and functional programming") why he chose OCaml.


Michael

-- 
Michael Schuerig                       They tell you that the darkness
mailto:schuerig@acm.org                      is a blessing in disguise.
http://www.schuerig.de/michael/           --Janis Ian, "From Me To You"

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 18:59 ` Martin Weber
  2003-03-12 20:24   ` Xavier Leroy
@ 2003-03-13  0:42   ` Graham Guttocks
  1 sibling, 0 replies; 57+ messages in thread
From: Graham Guttocks @ 2003-03-13  0:42 UTC (permalink / raw)
  To: Martin Weber; +Cc: caml-list

Martin Weber <Ephaeton@gmx.net> wrote:
>
> Most programmers are idiots, and idiots won't be able to appreciate
> the good things - they take the language which fits their
> intellectual base.

This may be a bit harsh, but I understand your sentiment. How about
the group in between the idiots and the language specialists? i.e,
folks who _would_ appreciate OCaml if they were exposed to it and had
some better teaching tools available?

> Bluntly, why should Ocaml be known more ?

Notoriety leads to a greater userbase which has many trickle-down
effects such as external suggestions and contributions, conferences,
additional funding, etc. all of which improve the language and insure
its future. The benefits of opensource are all about getting the code
into more hands. You lose all of these if OCaml remains obscure and
shrouded in mystery.

Look, I'm not talking about turning OCaml into a commercially driven
behemoth like Java folks. I'd just like to see OCaml get the exposure,
support, credit, etc. I think it deserves.

=====
Regards,
Graham

http://mobile.yahoo.com.au - Yahoo! Mobile
- Check & compose your email via SMS on your Telstra or Vodafone mobile.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 23:18         ` Daniel Bünzli
@ 2003-03-12 23:47           ` Brian Hurt
  0 siblings, 0 replies; 57+ messages in thread
From: Brian Hurt @ 2003-03-12 23:47 UTC (permalink / raw)
  To: Daniel Bünzli; +Cc: Richard W.M. Jones, caml-list

On Thu, 13 Mar 2003, Daniel Bünzli wrote:

> Very often what is needed is a way to figure out how you can do this or 
> that in the language along with relevant pointers in the documentation 
> graph. This is why I think that a bunch of well edited online tutorials 
> would do a better job; assuming that the reader has a minimal knowledge 
> of the language, something like the first two chapter of the ocaml 
> reference manual with a little more details.

I have a theory (backed up with a fair bit of circumstancial evidence) 
that a large number of purchasing decisions are influenced by the number 
of running feet of books in the local bookstore are dedicated to the 
topic.  The theory is (as I infer it) 'if I have a problem, I'll simply 
buy a book to tell me how to solve it.  After all, look at all of these 
books!  Surely one of them will be what I need!'

Having *the* perfect introductory book is actually a detriment, as 
it discourages other books from entering the field, thus reducing your 
runnning foot total.  Likewise, being intuitive or easy to understand is 
also a detriment, as this makes both for fewer books and for slimmer 
books.  Much better to have multi-thousand page tomes (tombs?).  And 
naturally, you can't measure running feet of web pages :-).

Brian


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 22:34           ` Michael Schuerig
  2003-03-12 23:13             ` Martin Weber
@ 2003-03-12 23:35             ` Brian Hurt
  1 sibling, 0 replies; 57+ messages in thread
From: Brian Hurt @ 2003-03-12 23:35 UTC (permalink / raw)
  To: Michael Schuerig; +Cc: caml-list

On Wed, 12 Mar 2003, Michael Schuerig wrote:

> On Wednesday 12 March 2003 19:08, Alwyn Goodloe wrote:
> >  I agree. This is really the difference between what most people do
> > in industry and what we do in academia. People out there just don't
> > care about how well you can build an automated theorem prover if they
> > can't draw their GUI screens and access their Oracle data bases.
> 
> Is software development in industry only about GUI screens, web pages 
> and database access? Well, from my own experience, I fear the answer is 
> mostly yes. 

Comming from the industry- mostly, yes.  Completely, no.

> That being as it is, would things in industry be that much 
> better if OCaml had everything it takes for writing enterprise 
> applications? Could OCaml in this area bring such a big improvement 
> over, say, Java and J2EE? Or are there other -- niche? -- areas where 
> the advantages OCaml provides are far more important?
> 

I could easily see an Ocaml J2EE.  If you read the vapor in the right way, 
.NET could be considered a language-agnostic J2EE (that already has it's 
own Ocaml-variant in F#).  Having had some experience with Microsoft, 
Microsoft's products, and Microsoft's history of product announcements, 
I'd recommend a wait and see approach.  However, the concept is doable in 
theory.

It's hard to estimate how ignorant the "bottom of the barrel" programmers 
are.  My father was teaching a class recently, attempting to teach OO 
programming to a bunch of Cobol programmers in Visual Basic (that last 
wasn't mentioned until after he had signed on).  He was a more than a 
little surprised when programmers with decades of 'experience' didn't know 
what a for loop was.  Twenty years in the industry, and they'd never had 
to use one.

Of course, this also raises the question of what a programmer is.  I have
a friend who considers herself a technical writer/buisness analyst.  For
one reason or another, she does an awful lot of Visual Basic scripting.  
She doesn't use for loops either- on the other hand, she also doesn't
consider herself a programmer, let alone an experienced senior software
engineer.

Brian


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 23:13             ` Martin Weber
@ 2003-03-12 23:35               ` Michael Schuerig
  2003-03-13  8:02                 ` Alessandro Baretta
  0 siblings, 1 reply; 57+ messages in thread
From: Michael Schuerig @ 2003-03-12 23:35 UTC (permalink / raw)
  To: caml-list

On Thursday 13 March 2003 00:13, Martin Weber wrote:
> I don't know what usually classifies as 'enterprise application' but
> I think what I'm doing is one - application(s) written solely for the
> use within the producing corner - no end user will ever see it

In my experience, the term "enterprise application" is not used 
generically for all custom or behind-the-scenes application used in an 
enterprise. Rather, it's used more specifically for applications that 
handle large amounts of data managed in databases; stuffing data into 
and getting it out of a DB and accomodating business processes while 
doing so.

I've been working on this kind of software for a couple of years and 
can't say that I'm particularly attracted to it. To be sure, I 
recognize that there are interesting aspects to it, but it's not what I 
myself find interesting. Also, as I said before, I don't see that OCaml 
provides a decisive advantage for *this* kind of software.

Michael

-- 
Michael Schuerig              The usual excuse for our most unspeakable
mailto:schuerig@acm.org         public acts is that they are necessary.
http://www.schuerig.de/michael/                      --Judith N. Shklar

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 17:12       ` Richard W.M. Jones
  2003-03-12 18:08         ` Alwyn Goodloe
@ 2003-03-12 23:18         ` Daniel Bünzli
  2003-03-12 23:47           ` Brian Hurt
  2003-03-13  2:15         ` William Lovas
  2 siblings, 1 reply; 57+ messages in thread
From: Daniel Bünzli @ 2003-03-12 23:18 UTC (permalink / raw)
  To: Richard W.M. Jones; +Cc: caml-list


> Someone else actually said it well on this list a while back. There
> is no "Programming Perl"-equivalent for OCaml.

Books have both the advantage and disadvantage to end in a (more or 
less) well structured exposition of whole topic.

Very often what is needed is a way to figure out how you can do this or 
that in the language along with relevant pointers in the documentation 
graph. This is why I think that a bunch of well edited online tutorials 
would do a better job; assuming that the reader has a minimal knowledge 
of the language, something like the first two chapter of the ocaml 
reference manual with a little more details.

Besides, tutorials can show good programming style, features of the 
language, how to set up things (e.g. make a new toplevel), give 
background for newbies (e.g. Pcre is a good alternative to Str), etc. I 
guess the top level would make that kind of tutorials very enjoyable, 
both to write and read.

 From simple things --- not too long --- to more complex ones with a 
very well defined and pleasing goal.

 > Using the socket interface. Show how to build your dummy little 
server.
 > Using regular expressions (pcre) and i/o. Show how to install the lib 
and implement a grep.
 > Accessing a database.
 > Using the thread library.
...

And well,
 > Show how to write a lambda calculus interpreter.

Just little things to help you start playing.

Daniel

P.S. See for example the tutorials available on www.oreilly.com (e.g. 
the ones on cocoa / objective-c programming). Of course it's about book 
promotion there, but some tutorial are not bad.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 22:34           ` Michael Schuerig
@ 2003-03-12 23:13             ` Martin Weber
  2003-03-12 23:35               ` Michael Schuerig
  2003-03-12 23:35             ` Brian Hurt
  1 sibling, 1 reply; 57+ messages in thread
From: Martin Weber @ 2003-03-12 23:13 UTC (permalink / raw)
  To: Michael Schuerig; +Cc: caml-list

On Wed, Mar 12, 2003 at 11:34:34PM +0100, Michael Schuerig wrote:
> (...)
> Is software development in industry only about GUI screens, web pages 
> and database access? Well, from my own experience, I fear the answer is 
> mostly yes. 

I'm working next to asic designers, and they give a shit about the web,
database access and guis :) They want scriptability and a clean programming
interface instead ... (and yeah, they appreciate good guis).

On the other hand, they are electrical engineers, so I guess they are not
too keen on learning yet another language - most proprietary tools they
use offer tcl as the scripting language, so that's a de facto standard -
and they're not interested in typing(1) around either ... as soon as it works
it's fine :) (see pentium bug - it's still there... but patched:-)) 

> That being as it is, would things in industry be that much 
> better if OCaml had everything it takes for writing enterprise 
> applications? 
> (...)

I don't know what usually classifies as 'enterprise application' but I
think what I'm doing is one - application(s) written solely for the use
within the producing corner - no end user will ever see it (except if
we release the stuff as opensource, but that's still being debated :).

That said, in *my* environment I don't think (oca)ml really has any
chance against tcl and/or perl, just because those two (or especially
tcl) are so simple. And I don't think that it can be the intention of
ocaml to get that simple as is tcl...

On the other hand, *I* could write the application in Ocaml, plugging
in both C extensions and (on that way, too) a tcl interpreter while
enabling an ocaml toplevel for the savvy.... hmmm.... 

but you know.. inherit a ton of C code..

regards,

-martin (taking another couple of notes for the 2.0)

(1) not as in inputting text into the computer, but stumbling over
beginner errors like my beloved +. :)

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 18:08         ` Alwyn Goodloe
@ 2003-03-12 22:34           ` Michael Schuerig
  2003-03-12 23:13             ` Martin Weber
  2003-03-12 23:35             ` Brian Hurt
  0 siblings, 2 replies; 57+ messages in thread
From: Michael Schuerig @ 2003-03-12 22:34 UTC (permalink / raw)
  To: caml-list

On Wednesday 12 March 2003 19:08, Alwyn Goodloe wrote:
>  I agree. This is really the difference between what most people do
> in industry and what we do in academia. People out there just don't
> care about how well you can build an automated theorem prover if they
> can't draw their GUI screens and access their Oracle data bases.

Is software development in industry only about GUI screens, web pages 
and database access? Well, from my own experience, I fear the answer is 
mostly yes. That being as it is, would things in industry be that much 
better if OCaml had everything it takes for writing enterprise 
applications? Could OCaml in this area bring such a big improvement 
over, say, Java and J2EE? Or are there other -- niche? -- areas where 
the advantages OCaml provides are far more important?

Michael

-- 
Michael Schuerig                  Failures to use one's frontal lobes
mailto:schuerig@acm.org           can result in the loss of them.
http://www.schuerig.de/michael/   --William H. Calvin

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 18:59 ` Martin Weber
@ 2003-03-12 20:24   ` Xavier Leroy
  2003-03-13  0:42   ` Graham Guttocks
  1 sibling, 0 replies; 57+ messages in thread
From: Xavier Leroy @ 2003-03-12 20:24 UTC (permalink / raw)
  To: Martin Weber; +Cc: caml-list

> Exaggerating:
> 
> Most programmers are idiots, and idiots won't be able to appreciate
> the good things - they take the language which fits their intellectual
> base. Still wondering why tons of people program in perl ? :)

On a loosely related note, see the article at
        http://archive.salon.com/21st/feature/1998/05/cov_12feature.html
titled "The dumbing-down of programming", and subtitled "Rebelling
against Microsoft, 'My Computer' and easy-to-use wizards, an engineer
rediscovers the joys of difficult computing."  The beginning is a bit
of a rant, but still "rediscovering the joys of difficult computing"
isn't a bad line for Caml :-)

- Xavier Leroy

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-06 23:27 Graham Guttocks
                   ` (2 preceding siblings ...)
  2003-03-11  1:43 ` Nicolas Cannasse
@ 2003-03-12 18:59 ` Martin Weber
  2003-03-12 20:24   ` Xavier Leroy
  2003-03-13  0:42   ` Graham Guttocks
  3 siblings, 2 replies; 57+ messages in thread
From: Martin Weber @ 2003-03-12 18:59 UTC (permalink / raw)
  To: Graham Guttocks; +Cc: caml-list

On Fri, Mar 07, 2003 at 12:27:31PM +1300, Graham Guttocks wrote:
> Greetings,
> 
> I discovered OCaml on Doug Bagley's computer shootout page where he
> gives it a rave review over all the other languages he evaluated.
> (...)

Yes, that's where I stumbled over Ocaml for the first time, too ...

> After looking into it further, I'm just surprised that OCaml isn't
> more popular.

I'm not. Exaggerating:

Most programmers are idiots, and idiots won't be able to appreciate
the good things - they take the language which fits their intellectual
base. Still wondering why tons of people program in perl ? :)

> (...)
> Any ideas why OCaml isn't more well known?  Is it just because the
> language is not as old as something like Python, or perhaps because
> the syntax is more difficult to learn?

Bluntly, why should Ocaml be known more ? I'm programming in about a
dozen languages, and I don't give a **** about whether the language
is known or not. If it needs a run-time environment and I gotta deliver,
fine, then they gotta install the run-time environment too. As long as
it's not java you're delivering, they can even download it via the 'net
and still live to see it finishing :)

>From all the things I judge a language, its popularity is nothing
I'm looking at. Well, okay, it can serve to amuse me. The popularity
of lisp for example ("lisp is dead" (yeah - as dead as I am)), or that
of perl (@{%$}!!) ...

On the syntax bit, I think it's just sad that ocaml requires different
special operators for different arguments, that's about it which might
drive off new people.  (why +. ? Can't 'a + 'a be enough for integer, 
bignum, rational, float, string, whatsoEVER addition ? sigh ...).

regards,

-martin

PS: I'm using perl and java myself, so just making sure that you get
that this is no flamebait. If you can't help yourself, cat > /dev/null.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12  2:32       ` Nicolas Cannasse
  2003-03-12 10:51         ` Alex Romadinoff
@ 2003-03-12 18:24         ` Max Kirillov
  1 sibling, 0 replies; 57+ messages in thread
From: Max Kirillov @ 2003-03-12 18:24 UTC (permalink / raw)
  To: caml-list

On Wed, Mar 12, 2003 at 11:32:09AM +0900, Nicolas Cannasse wrote:
> This had been in my mind (and also in the mind of several other people of
> this list I think) since I started with OCaml. Right now, as one of the few
> ocaml-windows developpers, I'm editing and compiling Ocaml under Visual
> Studio 6. The language is not fully integrated since VC6 does not enable it
> ( while .Net can do it, but is far more expensive and more difficult to
> deploy for a single basic user ). There is the workspace, syntax
> highlightning, automatic compilation, one-key compilation start and
> compilation-error-jump-to-file+line. So it is right now quite convenient to
> work with.
> 
> An IDE will require a far more level of integration such as the possibility
> to "debug" types visualy when having an error ( e.g. just put your mouse /
> cursor on a variable to see its type ) , perhaps an integrated debugger ,
> and of course a multiplatform (unix+windows) GUI since doing it from
> unix-only won't help people from the industry and doing it for windows only
> won't help the large part of the ocaml community.
> 
> The problem here is that such kind of editor is more or less a personnal
> choice, and if you want the current OCaml+Emacs users to switch to such an
> IDE, you'll have to make it fully customizable and add key features that
> will make the difference. Quite a challenge.
> 
> Nicolas Cannasse

There is ocamlbrowser in the distribution. It can typecheck and then be
the type browser as you mention it. I dont know how much of it works on
Windows (I surely have seen it started), but the functionality you want
should not be very os-depended. It is based on analysis of typed tree
after successful typecheck.

As a first step, one writing the VS (or whatever) plugin could just
start from here and take some code from ocamlbrowser.

To go further, there are 2 points.

First, there would be nice to dump a typed tree just like the parsetree
by -dparsetree option. It should be easy to do. Then, you can read the
output and do whatever you want with it.  (though, it is doubtful
parsing the output to use it in VS-ish ides is easier than adding a
IDE-specific reporter to the compiler)

Then, this all OK when there are no errors. But, when there are some
(and this it what is mostly wanted for IDE), typechecking is aborted and
no information if returned. So, it would be great to have possibility to
freeze the typechecking (or even force it further), getting as much
information as possible.  Then, one could see the inferred types and
easily locate the point where they goes wrong. Currently, locating a
typing error it an iterative process -- I insert explicit type
constraint here and there, then compile, then just stare at output and
think, then again. If I could look at typedtree at the moment the typing
error was detected, I suppose this will be much faster.

-- 
Max

P.S. btw, is the "typecheck at error" done for the other languages. I
know there are alot of languages support for the VS. How many of them
cat acquire information from a wrong source?

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-12 17:12       ` Richard W.M. Jones
@ 2003-03-12 18:08         ` Alwyn Goodloe
  2003-03-12 22:34           ` Michael Schuerig
  2003-03-12 23:18         ` Daniel Bünzli
  2003-03-13  2:15         ` William Lovas
  2 siblings, 1 reply; 57+ messages in thread
From: Alwyn Goodloe @ 2003-03-12 18:08 UTC (permalink / raw)
  To: Richard W.M. Jones; +Cc: caml-list

 I agree. This is really the difference between what most people do in
industry and what we do in academia. People out there just don't care
about how well you can build an automated theorem prover if they can't
draw their GUI screens and access their Oracle data bases. I think this is
why people will say it takes a while to be productive in OCAML. If you
want to read and write files, access the DB, and draw a screen, then you
probably have to go beyond most introductions to OCAML. Unfortunately,
most developers will just stop there. A book akin to the O Riley Java
networking book would be great as well. There is a lot of cool OCAML stuff
out there for networking - hopefully someone will write a book to spread
the news.

  On the other hand there really isn't a good intro to CS in OCAML book in
English. The good texts combiled with the DrScheme environmnet is a big
reason for the use of Scheme at many Universities in the US.

Alwyn

agoodloe@gradient.cis.upenn.edu

On Wed, 12 Mar 2003, Richard W.M. Jones wrote:

> On Wed, Mar 12, 2003 at 08:02:30AM +1300, Graham Guttocks wrote:
> > Pierre Weis <pierre.weis@inria.fr> wrote:
> > >
> > > This may be the main drawback of Objective Caml: there is no
> > > ``Objective Caml for dummies''. That may be the price to pay to use
> > > a powerful and theoretically well-founded language.
> >
> > Do you mean that such a book could not be written, or simply that it
> > just has not been written yet?  I personally would like to see an
> > ``Objective Caml for dummies'' as the available introductory material
> > (in English) is pretty poor IMO.
>
> Someone else actually said it well on this list a while back. There
> is no "Programming Perl"-equivalent for OCaml.
>
> And please don't start by telling me about the lambda calculus or
> higher-order functions.
>
> Start by telling me how to read and write files. How to draw a nice
> picture. Go on to tell me how to access my SQL database from an
> OCaml application server.
>
> Rich.
>
> --
> Richard Jones, Red Hat Inc. (London, UK) http://www.redhat.com/software/ccm
> http://www.annexia.org/ Freshmeat projects: http://freshmeat.net/users/rwmj
> PTHRLIB is a library for writing small, efficient and fast servers in C.
> HTTP, CGI, DBI, lightweight threads: http://www.annexia.org/freeware/pthrlib/
>
> -------------------
> To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
> Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
@ 2003-03-12 17:40 isaac gouy
  0 siblings, 0 replies; 57+ messages in thread
From: isaac gouy @ 2003-03-12 17:40 UTC (permalink / raw)
  To: caml-list

Why isn't X more popular?
Why isn't X mainstream?

Such fascinating questions! The many answers often
have as much to do with the specific history of a
language, as they do with language features or design.

Then there's philosophy-
'There are many ways of trying to understand programs.
People often rely too much on one way, which is called
"debugging" and consists of running a
partly-understood program to see if it does what you
expected. Another way, which ML advocates, is to
install some means of understanding in the very
programs themselves.' 
Robin Milner, preface to The Little MLer.

It's the immediate-gratification of getting
"something" to work (and then making it the "right
something") versus the deferred-pleasure of knowing
that you will have a "correct" program.

best wishes, Isaac

__________________________________________________
Do you Yahoo!?
Yahoo! Web Hosting - establish your business online
http://webhosting.yahoo.com

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-11 19:02     ` Graham Guttocks
@ 2003-03-12 17:12       ` Richard W.M. Jones
  2003-03-12 18:08         ` Alwyn Goodloe
                           ` (2 more replies)
  2003-03-13  8:09       ` Pierre Weis
  1 sibling, 3 replies; 57+ messages in thread
From: Richard W.M. Jones @ 2003-03-12 17:12 UTC (permalink / raw)
  Cc: caml-list

On Wed, Mar 12, 2003 at 08:02:30AM +1300, Graham Guttocks wrote:
> Pierre Weis <pierre.weis@inria.fr> wrote:
> >
> > This may be the main drawback of Objective Caml: there is no
> > ``Objective Caml for dummies''. That may be the price to pay to use
> > a powerful and theoretically well-founded language.
> 
> Do you mean that such a book could not be written, or simply that it
> just has not been written yet?  I personally would like to see an
> ``Objective Caml for dummies'' as the available introductory material
> (in English) is pretty poor IMO.

Someone else actually said it well on this list a while back. There
is no "Programming Perl"-equivalent for OCaml.

And please don't start by telling me about the lambda calculus or
higher-order functions.

Start by telling me how to read and write files. How to draw a nice
picture. Go on to tell me how to access my SQL database from an
OCaml application server.

Rich.

-- 
Richard Jones, Red Hat Inc. (London, UK) http://www.redhat.com/software/ccm
http://www.annexia.org/ Freshmeat projects: http://freshmeat.net/users/rwmj
PTHRLIB is a library for writing small, efficient and fast servers in C.
HTTP, CGI, DBI, lightweight threads: http://www.annexia.org/freeware/pthrlib/

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* RE: [Caml-list] OCaml popularity
  2003-03-12  2:32       ` Nicolas Cannasse
@ 2003-03-12 10:51         ` Alex Romadinoff
  2003-03-12 18:24         ` Max Kirillov
  1 sibling, 0 replies; 57+ messages in thread
From: Alex Romadinoff @ 2003-03-12 10:51 UTC (permalink / raw)
  To: 'Nicolas Cannasse', 'Guillaume Marceau', caml-list

[-- Attachment #1: Type: text/plain, Size: 3127 bytes --]

Nicolas,
 
Why should we switch? In fact, Tuareg or ocaml-mode provides reasonable
IDE based on emacs. 
And those IDEs are much betters then those broken VC++. Really. 
In fact, I’m industry Java programmer and use emacs JDE mode with
ClearCase integration to develop out OSS product. This IDE is better
integrated into our development process than so called industry-strength
IDEs, such as IDEA and Together/J. 
 
I think, emacs provides good framework for building such standard IDE,
and all things, you mentioned, could be easily implemented in it.
 
Alex
 
 
-----Original Message-----
From: Nicolas Cannasse [mailto:warplayer@free.fr] 
Sent: Wednesday, March 12, 2003 5:32 AM
To: Guillaume Marceau; caml-list@inria.fr
Subject: Re: [Caml-list] OCaml popularity
 
> One other unrelated observation on language acceptance: 
> 
> In the the industry, they accept new languages as their IDE become 
> usable. Somehow, a solid IDE has become the sign that the language 
> matured and is now stable enough for industrial usage. Also, by their 
> own account, industrial coders spent so much time in VC++, they are
now 
> IDE-dependent. IDE in this context means one-key compilation,
hypertext 
> jumps between name usages and definitions, and a tree overview of the 
> components of the project, context sensitive work completion and
context 
> sensitive help, etc. Ocaml would gain at having an official IDE
project 
> which implement these features. 
You're raising here a remanent subject :) 
This had been in my mind (and also in the mind of several other people
of 
this list I think) since I started with OCaml. Right now, as one of the
few 
ocaml-windows developpers, I'm editing and compiling Ocaml under Visual 
Studio 6. The language is not fully integrated since VC6 does not enable
it 
( while .Net can do it, but is far more expensive and more difficult to 
deploy for a single basic user ). There is the workspace, syntax 
highlightning, automatic compilation, one-key compilation start and 
compilation-error-jump-to-file+line. So it is right now quite convenient
to 
work with. 
An IDE will require a far more level of integration such as the
possibility 
to "debug" types visualy when having an error ( e.g. just put your mouse
/ 
cursor on a variable to see its type ) , perhaps an integrated debugger
, 
and of course a multiplatform (unix+windows) GUI since doing it from 
unix-only won't help people from the industry and doing it for windows
only 
won't help the large part of the ocaml community. 
The problem here is that such kind of editor is more or less a personnal

choice, and if you want the current OCaml+Emacs users to switch to such
an 
IDE, you'll have to make it fully customizable and add key features that

will make the difference. Quite a challenge. 
Nicolas Cannasse 
------------------- 
To unsubscribe, mail caml-list-request@inria.fr Archives:
http://caml.inria.fr 
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ:
http://caml.inria.fr/FAQ/ 
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners 

[-- Attachment #2: Type: text/html, Size: 13537 bytes --]

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

* Re: [Caml-list] OCaml popularity
  2003-03-11 14:27     ` Guillaume Marceau
  2003-03-11 16:16       ` David Brown
@ 2003-03-12  2:32       ` Nicolas Cannasse
  2003-03-12 10:51         ` Alex Romadinoff
  2003-03-12 18:24         ` Max Kirillov
  1 sibling, 2 replies; 57+ messages in thread
From: Nicolas Cannasse @ 2003-03-12  2:32 UTC (permalink / raw)
  To: Guillaume Marceau, caml-list

> One other unrelated observation on language acceptance:
>
> In the the industry, they accept new languages as their IDE become
> usable. Somehow, a solid IDE has become the sign that the language
> matured and is now stable enough for industrial usage. Also, by their
> own account, industrial coders spent so much time in VC++, they are now
> IDE-dependent. IDE in this context means one-key compilation, hypertext
> jumps between name usages and definitions, and a tree overview of the
> components of the project, context sensitive work completion and context
> sensitive help, etc. Ocaml would gain at having an official IDE project
> which implement these features.

You're raising here a remanent subject :)

This had been in my mind (and also in the mind of several other people of
this list I think) since I started with OCaml. Right now, as one of the few
ocaml-windows developpers, I'm editing and compiling Ocaml under Visual
Studio 6. The language is not fully integrated since VC6 does not enable it
( while .Net can do it, but is far more expensive and more difficult to
deploy for a single basic user ). There is the workspace, syntax
highlightning, automatic compilation, one-key compilation start and
compilation-error-jump-to-file+line. So it is right now quite convenient to
work with.

An IDE will require a far more level of integration such as the possibility
to "debug" types visualy when having an error ( e.g. just put your mouse /
cursor on a variable to see its type ) , perhaps an integrated debugger ,
and of course a multiplatform (unix+windows) GUI since doing it from
unix-only won't help people from the industry and doing it for windows only
won't help the large part of the ocaml community.

The problem here is that such kind of editor is more or less a personnal
choice, and if you want the current OCaml+Emacs users to switch to such an
IDE, you'll have to make it fully customizable and add key features that
will make the difference. Quite a challenge.

Nicolas Cannasse

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-11 10:23   ` Pierre Weis
  2003-03-11 14:27     ` Guillaume Marceau
@ 2003-03-11 19:02     ` Graham Guttocks
  2003-03-12 17:12       ` Richard W.M. Jones
  2003-03-13  8:09       ` Pierre Weis
  2003-03-15  1:43     ` Tushar Samant
  2 siblings, 2 replies; 57+ messages in thread
From: Graham Guttocks @ 2003-03-11 19:02 UTC (permalink / raw)
  To: Pierre Weis; +Cc: caml-list

Pierre Weis <pierre.weis@inria.fr> wrote:
>
> This may be the main drawback of Objective Caml: there is no
> ``Objective Caml for dummies''. That may be the price to pay to use
> a powerful and theoretically well-founded language.

Do you mean that such a book could not be written, or simply that it
just has not been written yet?  I personally would like to see an
``Objective Caml for dummies'' as the available introductory material
(in English) is pretty poor IMO.

> learning Caml is indeed profitable to the way you deal with
> programming problems, but on the other hand, yes, it is not so easy

In http://caml.inria.fr/FAQ/general-eng.html you said:

``Caml is a programming language, easy to learn, easy to use''.

So is it easy or not easy?

=====
Regards,
Graham

http://mobile.yahoo.com.au - Yahoo! Mobile
- Check & compose your email via SMS on your Telstra or Vodafone mobile.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-11  1:43 ` Nicolas Cannasse
  2003-03-11 10:23   ` Pierre Weis
@ 2003-03-11 16:26   ` Fred Yankowski
  1 sibling, 0 replies; 57+ messages in thread
From: Fred Yankowski @ 2003-03-11 16:26 UTC (permalink / raw)
  Cc: caml-list

Richard Gabriel, author of the famous "Worse is Better" paper about
C/Unix vs Lisp, makes some interesting points in his recent book while
discussing his theory of what it takes for a programming language to
be accepted and evolve:

    The second mandatory feature is that the language cannot require
    mathematical sophistication from its users. Programmers are not
    mathematicians, no matter how much we wish and wish for it. And I
    don't mean sophisticated mathematicians, but just people who can
    think precisely and rigorously in the way that mathematicians can.

    For example, to most language theorists the purpose of types is to
    enable the compiler to reason about the correctness of a program
    in at least skeletal terms. Such reasoning can produce programs
    with no run-time type errors. Strict type systems along with other
    exemplary behavior, moreover, enable certain proofs about
    programs.

    Well, the average programmer might be grateful somewhere in his
    heart for the lack of run-time type errors, but all he or she
    really cares about is that the compiler can produce good code, and
    types help compiler writers write compilers that do that.

    Furthermore, types that try to do more than that are a hindrance
    to understanding. For example, abstract data types allow one to
    write programs in which the interface is completely separate from
    the implementation. Perhaps some large programming teams care a
    lot about that, but a lot of programming goes on in ones and twos,
    maybe threes. Types of this variety, with complicated syntax and
    baffling semantics, is a hindrance to programming for many of
    these folks. Sure, someday this will be important as the size of
    programming teams increases and as the level of mathematics
    education increases (no laughing, please), but today it is not.

    Inheritance and polymorphism are examples of programming language
    concepts requiring mathematical sophistication to understand.

[From "Patterns of Software", 1996, Richard P. Gabriel, chapter titled
"The End of History and the Last Programming Language"]


-- 
Fred Yankowski      fred@ontosys.com           tel: +1.630.879.1312
OntoSys, Inc	    PGP keyID: 7B449345        fax: +1.630.879.1370
www.ontosys.com     38W242 Deerpath Rd, Batavia, IL 60510-9461, USA

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-11 14:27     ` Guillaume Marceau
@ 2003-03-11 16:16       ` David Brown
  2003-03-12  2:32       ` Nicolas Cannasse
  1 sibling, 0 replies; 57+ messages in thread
From: David Brown @ 2003-03-11 16:16 UTC (permalink / raw)
  To: Guillaume Marceau; +Cc: caml-list

On Tue, Mar 11, 2003 at 09:27:18AM -0500, Guillaume Marceau wrote:

> We could strive to find (or develop) something ocaml can do that cannot
> be done with any other mainstream language. Or, alternatively, something
> that is an order or two faster in ocaml than in any other language. So
> easy in fact, that the time time saved on a single project offsets the
> time cost of learning the rudiments ocaml [*]. 

Almost everything I've done in ocaml was an order or two faster to
develop in ocaml than it would have been in another language.  I don't
think I was at all that productive while learning ocaml, though.

Dave

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-11 10:23   ` Pierre Weis
@ 2003-03-11 14:27     ` Guillaume Marceau
  2003-03-11 16:16       ` David Brown
  2003-03-12  2:32       ` Nicolas Cannasse
  2003-03-11 19:02     ` Graham Guttocks
  2003-03-15  1:43     ` Tushar Samant
  2 siblings, 2 replies; 57+ messages in thread
From: Guillaume Marceau @ 2003-03-11 14:27 UTC (permalink / raw)
  To: caml-list

On Mon, 2003-03-10 at 18:48, Gerd Stolpmann wrote:
> 
> I suppose it has to do with the label "functional language", and
> these languages are often seen as toys of academic people. I.e.
> nothing for the real programmer. Not really sexy.


What about Python and Ruby? They were both heavily influenced by 
functional programming, yet they do not appear to carry the "toy
functional language" stigma. 

Is Ocaml special in that respect?


On Tue, 2003-03-11 at 05:23, Pierre Weis wrote:
> [...]
> 
> To briefly answer your question: I think Caml is not so popular
> because there were no big company or extremely important and
> successful tool to advertize it all over the place (like Sun did for
> Java or Unix for C). In short, Caml is more and more recognized as a
> powerful and well-crafted language among expert programmers, but it is
> almost unknown to the general audience.
> 

Well, since we cannot do much about Ocaml's lack of buzz-word laden
marketing campaign, maybe we should look at other indicator of language
success and work of those.


I believe most of today's mainstream language kick started their
popularity with a killer app :


   C was once the only language you could hack Unix with

   Java had web applets

   Perl had regular expressions

   Visual Basic had that really nice beginner-friendly dialog box editor

   PHP does server side web page generation.

   Tcl had Tk


We could strive to find (or develop) something ocaml can do that cannot
be done with any other mainstream language. Or, alternatively, something
that is an order or two faster in ocaml than in any other language. So
easy in fact, that the time time saved on a single project offsets the
time cost of learning the rudiments ocaml [*]. 

While writing these lines reminds me of Todd Proebsting's presentation
at LL2. 
    http://ll2.ai.mit.edu/talks/proebsting.ppt
Among other things, he offered a starter list of domains which are
begging for better support at the programming language level. If only we
could nail one of them solid...



One other unrelated observation on language acceptance:

In the the industry, they accept new languages as their IDE become
usable. Somehow, a solid IDE has become the sign that the language
matured and is now stable enough for industrial usage. Also, by their
own account, industrial coders spent so much time in VC++, they are now
IDE-dependent. IDE in this context means one-key compilation, hypertext
jumps between name usages and definitions, and a tree overview of the
components of the project, context sensitive work completion and context
sensitive help, etc. Ocaml would gain at having an official IDE project
which implement these features.




[*] : Ocaml makes writing compilers a delicacy. Unfortunately, not
enough people write compilers to start a critical mass seed around it.
For now I am selling ocaml as the language of choice to do error prone
data structure gymnastics. This is rather vague and unlikely to trigger
at coder into thinking : "wow, I'm about to do error prone data
structure gymnastics! This is the perfect occasion to learn ocaml!"


-- 
  "In Google non est, ergo non est." 

- Guillaume


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-11  1:43 ` Nicolas Cannasse
@ 2003-03-11 10:23   ` Pierre Weis
  2003-03-11 14:27     ` Guillaume Marceau
                       ` (2 more replies)
  2003-03-11 16:26   ` Fred Yankowski
  1 sibling, 3 replies; 57+ messages in thread
From: Pierre Weis @ 2003-03-11 10:23 UTC (permalink / raw)
  To: Nicolas Cannasse; +Cc: graham_guttocks, caml-list

[...]

To briefly answer your question: I think Caml is not so popular
because there were no big company or extremely important and
successful tool to advertize it all over the place (like Sun did for
Java or Unix for C). In short, Caml is more and more recognized as a
powerful and well-crafted language among expert programmers, but it is
almost unknown to the general audience.

> There is few beginnings of answers two your question :
> - some people are telling that you need a PhD to fully understand (and
> appreciate) OCaml . That's somehow exagerate, but not so much, since you
> need to know at least several programming languages to really understand how
> Ocaml is great compared to them :)

You're right: it seems that people need to suffer a lot by programming
(bugs) in C or Java before they really appreciate Objective Caml.

> - about the syntax, I had some experience of teaching Ocaml to some people,
> plus my own Ocaml-learning experience. The current syntax take some time to
> get, but is quite good and brief once you got it. But you have to really
> understand the underlying typing algorithm when you got a type error. I
> think this is perhaps the biggest problem with OCaml syntax right now :
> while C/Java will tell you " missing ';' " , Ocaml will simply said " Syntax
> Error ".

In this case, you should try camlp4 (ocamlc -pp camlp4o): it very
often gives a fairly good hint about the syntax error (although you
have to know something about the Caml AST to fully benefit from the
error report).

> The same goes for typing. Just make write few lines to a beginner,
> he will hit into something like " this expression has type unit -> string
> but is here used with 'a -> unit" ( quite an obvious error message for
> people here, but perhaps a little bit difficult to get when you don't know
> the language )

You are also right: this language has to be taught before being
profitably used. The darker side of this fact is that conversely, you
have to learn it. This may be the main drawback of Objective Caml:
there is no ``Objective Caml for dummies''. That may be the price to
pay to use a powerful and theoretically well-founded language.

As a long time Caml teacher, I used to start the course with a small
introductory speech that roughly goes like that: «you're smart guys,
all of you; today you are smart {\em and} lucky, since you get the
opportunity to learn the smartest programming language I know, so
smart that it could change your way of thinking about programs and
computers. Indeed, it will not be easy, but you will gain a lot of new
ideas from Caml and this is worth the effort!»

After such an introduction, some students are afraid and some are
enthousiastic; after a while, they all discover that this is plain
true: learning Caml is indeed profitable to the way you deal with
programming problems, but on the other hand, yes, it is not so easy !

Pierre Weis

INRIA, Projet Cristal, Pierre.Weis@inria.fr, http://pauillac.inria.fr/~weis/


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-06 23:27 Graham Guttocks
  2003-03-10 20:43 ` Paul Steckler
  2003-03-10 23:48 ` Gerd Stolpmann
@ 2003-03-11  1:43 ` Nicolas Cannasse
  2003-03-11 10:23   ` Pierre Weis
  2003-03-11 16:26   ` Fred Yankowski
  2003-03-12 18:59 ` Martin Weber
  3 siblings, 2 replies; 57+ messages in thread
From: Nicolas Cannasse @ 2003-03-11  1:43 UTC (permalink / raw)
  To: Graham Guttocks, caml-list

> I discovered OCaml on Doug Bagley's computer shootout page where he
> gives it a rave review over all the other languages he evaluated.
>
> After looking into it further, I'm just surprised that OCaml isn't
> more popular.  It seems to have all the rapid development features of
> a scripting language like Python, but unlike scripting languages
> offers fast native code like a compiled language.  Seemingly the best
> of both worlds.
>
> Any ideas why OCaml isn't more well known?  Is it just because the
> language is not as old as something like Python, or perhaps because
> the syntax is more difficult to learn?

There is few beginnings of answers two your question :
- some people are telling that you need a PhD to fully understand (and
appreciate) OCaml . That's somehow exagerate, but not so much, since you
need to know at least several programming languages to really understand how
Ocaml is great compared to them :)
- about the syntax, I had some experience of teaching Ocaml to some people,
plus my own Ocaml-learning experience. The current syntax take some time to
get, but is quite good and brief once you got it. But you have to really
understand the underlying typing algorithm when you got a type error. I
think this is perhaps the biggest problem with OCaml syntax right now :
while C/Java will tell you " missing ';' " , Ocaml will simply said " Syntax
Error ". The same goes for typing. Just make write few lines to a beginner,
he will hit into something like " this expression has type unit -> string
but is here used with 'a -> unit" ( quite an obvious error message for
people here, but perhaps a little bit difficult to get when you don't know
the language )

Nicolas Cannasse

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-10 23:48 ` Gerd Stolpmann
@ 2003-03-11  0:18   ` Brian Hurt
  2003-03-17 23:49   ` Graham Guttocks
  1 sibling, 0 replies; 57+ messages in thread
From: Brian Hurt @ 2003-03-11  0:18 UTC (permalink / raw)
  To: Gerd Stolpmann; +Cc: Graham Guttocks, Ocaml Mailing List

On 11 Mar 2003, Gerd Stolpmann wrote:

> I don't think it is the syntax. People are programming in C, with a
> really strange syntax, and they take the C syntax as a natural way to
> express algorithms. I hear only few complaints about that, so I think
> most people just take syntax as it is.

Most of my responses have been off list, but for this I feel compelled to 
respond on-list :-).

C is a category killer language.  For what it is good for, I cannot 
envision a language that would be sufficiently better than C to make it 
worth learning, let alone implementing.

Note that it's category is 'low-level' programming- embedded software, 
operating systems, device drivers, the higher level parts of the BIOS, 
etc.  Code banging directly on hardware.

C is a very low-level language, very close to the hardware in important
ways.  It is, in essence, a model of the Von Neumann architecture.  While
still maintaining some semblance of portability and structure.  C is a
great choice for when the alternative is assembler.

Note that if you're not at this level, it's idiotic to be using C IMHO.  
Things which are plusses at the hardware level become minuses at any other 
level- for example, explicit memory management.  Explicit memory 
management is *required* (for example) in situations where not all memory 
is equal- for example, in many OSs (like Windows, HP-UX, and others) you 
have swappable memory and nonswappable memory.  And your interrupt 
handlers had better never touch swappable memory.  Or if the memory is 
actually a memory mapped I/O device.  Etc.  But if you're not working at 
that level, explicit memory management is only good for introducing bugs.

This is no one perfect programming language.  

Brian


-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-06 23:27 Graham Guttocks
  2003-03-10 20:43 ` Paul Steckler
@ 2003-03-10 23:48 ` Gerd Stolpmann
  2003-03-11  0:18   ` Brian Hurt
  2003-03-17 23:49   ` Graham Guttocks
  2003-03-11  1:43 ` Nicolas Cannasse
  2003-03-12 18:59 ` Martin Weber
  3 siblings, 2 replies; 57+ messages in thread
From: Gerd Stolpmann @ 2003-03-10 23:48 UTC (permalink / raw)
  To: Graham Guttocks; +Cc: caml-list

Am Fre, 2003-03-07 um 00.27 schrieb Graham Guttocks:
> Greetings,
> 
> I discovered OCaml on Doug Bagley's computer shootout page where he
> gives it a rave review over all the other languages he evaluated.
> 
> After looking into it further, I'm just surprised that OCaml isn't
> more popular.  It seems to have all the rapid development features of
> a scripting language like Python, but unlike scripting languages
> offers fast native code like a compiled language.  Seemingly the best
> of both worlds.
> 
> Any ideas why OCaml isn't more well known?  Is it just because the
> language is not as old as something like Python, or perhaps because
> the syntax is more difficult to learn?

I suppose it has to do with the label "functional language", and
these languages are often seen as toys of academic people. I.e. nothing
for the real programmer. Not really sexy.

(Don't try to explain your colleagues the lambda calculus, and that
O'Caml is just an instance of it. This is the wrong way. You get answers
like that the lambda calculus is THE thing they have never understood at
university. There is a learning barrier.)

Of course, this is not true. O'Caml is also an unorthodox imperative
language, and it is attractive enough for some adventures at night
(don't take this too seriously).

I don't think it is the syntax. People are programming in C, with a
really strange syntax, and they take the C syntax as a natural way to
express algorithms. I hear only few complaints about that, so I think
most people just take syntax as it is.

Gerd
-- 
------------------------------------------------------------
Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany 
gerd@gerd-stolpmann.de          http://www.gerd-stolpmann.de
------------------------------------------------------------

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* Re: [Caml-list] OCaml popularity
  2003-03-06 23:27 Graham Guttocks
@ 2003-03-10 20:43 ` Paul Steckler
  2003-03-10 23:48 ` Gerd Stolpmann
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 57+ messages in thread
From: Paul Steckler @ 2003-03-10 20:43 UTC (permalink / raw)
  To: Graham Guttocks; +Cc: caml-list

=?iso-8859-1?q?Graham=20Guttocks?= wrote:
> Any ideas why OCaml isn't more well known?  Is it just because the
> language is not as old as something like Python, or perhaps because
> the syntax is more difficult to learn?

It's certainly not a question of age.  OCaml is derived from 
the Caml language, developed back in the 1980's.

-- Paul

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

* [Caml-list] OCaml popularity
@ 2003-03-06 23:27 Graham Guttocks
  2003-03-10 20:43 ` Paul Steckler
                   ` (3 more replies)
  0 siblings, 4 replies; 57+ messages in thread
From: Graham Guttocks @ 2003-03-06 23:27 UTC (permalink / raw)
  To: caml-list

Greetings,

I discovered OCaml on Doug Bagley's computer shootout page where he
gives it a rave review over all the other languages he evaluated.

After looking into it further, I'm just surprised that OCaml isn't
more popular.  It seems to have all the rapid development features of
a scripting language like Python, but unlike scripting languages
offers fast native code like a compiled language.  Seemingly the best
of both worlds.

Any ideas why OCaml isn't more well known?  Is it just because the
language is not as old as something like Python, or perhaps because
the syntax is more difficult to learn?

=====
Regards,
Graham

http://mobile.yahoo.com.au - Yahoo! Mobile
- Check & compose your email via SMS on your Telstra or Vodafone mobile.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


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

end of thread, other threads:[~2003-03-17 23:49 UTC | newest]

Thread overview: 57+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-03-15 16:27 [Caml-list] OCaml popularity Oliver Bandel
2003-03-15 17:55 ` Sergey Goldgaber
  -- strict thread matches above, loose matches on Subject: below --
2003-03-14 22:14 Daniel M. Albro
2003-03-13 14:39 [oliver: Re: [Caml-list] OCaml popularity] Oliver Bandel
2003-03-13 16:35 ` [Caml-list] OCaml popularity Michael Schuerig
2003-03-13  7:09 Daniel M. Albro
2003-03-13 16:48 ` Neel Krishnaswami
2003-03-13 21:29 ` Karl Zilles
2003-03-13 21:36   ` Daniel M. Albro
2003-03-13 21:42   ` Daniel M. Albro
     [not found]     ` <15985.1204.814698.939943@h00045a4799d6.ne.client2.attbi.com>
2003-03-14  5:49       ` Daniel M. Albro
2003-03-14  9:05         ` Ville-Pertti Keinonen
2003-03-14  9:13           ` Daniel M. Albro
2003-03-13 21:53   ` Brian Hurt
2003-03-12 23:53 [oliver: Re: [Caml-list] OCaml popularity] Oliver Bandel
2003-03-13  1:34 ` [Caml-list] OCaml popularity Michael Schuerig
2003-03-12 17:40 isaac gouy
2003-03-06 23:27 Graham Guttocks
2003-03-10 20:43 ` Paul Steckler
2003-03-10 23:48 ` Gerd Stolpmann
2003-03-11  0:18   ` Brian Hurt
2003-03-17 23:49   ` Graham Guttocks
2003-03-11  1:43 ` Nicolas Cannasse
2003-03-11 10:23   ` Pierre Weis
2003-03-11 14:27     ` Guillaume Marceau
2003-03-11 16:16       ` David Brown
2003-03-12  2:32       ` Nicolas Cannasse
2003-03-12 10:51         ` Alex Romadinoff
2003-03-12 18:24         ` Max Kirillov
2003-03-11 19:02     ` Graham Guttocks
2003-03-12 17:12       ` Richard W.M. Jones
2003-03-12 18:08         ` Alwyn Goodloe
2003-03-12 22:34           ` Michael Schuerig
2003-03-12 23:13             ` Martin Weber
2003-03-12 23:35               ` Michael Schuerig
2003-03-13  8:02                 ` Alessandro Baretta
2003-03-13 10:23                   ` Michael Schuerig
2003-03-12 23:35             ` Brian Hurt
2003-03-12 23:18         ` Daniel Bünzli
2003-03-12 23:47           ` Brian Hurt
2003-03-13  2:15         ` William Lovas
2003-03-13  3:44           ` Graham Guttocks
2003-03-13  9:31           ` Richard W.M. Jones
     [not found]           ` <20030313095232.GC347@first.in-berlin.de>
2003-03-13 20:50             ` William Lovas
2003-03-13 21:17               ` Oliver Bandel
2003-03-13 22:01                 ` Brian Hurt
2003-03-13 22:17                 ` Oliver Bandel
2003-03-14  6:33                 ` Michal Moskal
2003-03-14 11:50                   ` Markus Mottl
2003-03-14 15:38                     ` Oliver Bandel
2003-03-14 10:13               ` MikhailFedotov
2003-03-14 10:30                 ` Johann Spies
2003-03-13  8:09       ` Pierre Weis
2003-03-15  1:43     ` Tushar Samant
2003-03-15  8:19       ` Andreas Eder
2003-03-11 16:26   ` Fred Yankowski
2003-03-12 18:59 ` Martin Weber
2003-03-12 20:24   ` Xavier Leroy
2003-03-13  0:42   ` Graham Guttocks

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).