caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: oliver@first.in-berlin.de (Oliver Bandel)
To: caml-list@inria.fr
Subject: Re: [Caml-list] OCaml popularity
Date: Sat, 15 Mar 2003 17:27:43 +0100	[thread overview]
Message-ID: <20030315162743.GA428@first.in-berlin.de> (raw)

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


             reply	other threads:[~2003-03-15 16:30 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-15 16:27 Oliver Bandel [this message]
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030315162743.GA428@first.in-berlin.de \
    --to=oliver@first.in-berlin.de \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).