caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Alan Falloon <Al.Falloon@synopsys.com>
To: David Teller <David.Teller@ens-lyon.org>
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] what is high-level
Date: Fri, 04 Nov 2005 11:06:50 -0500	[thread overview]
Message-ID: <436B871A.40906@synopsys.com> (raw)
In-Reply-To: <1131118091.6558.7.camel@titania>

David Teller wrote:

>Still, in OCaml/Haskell/ML, you do need some understanding of the type
>system, which is typically not necessary in other programming languages.
>  
>
To write software you need to have some notion of types. By that I mean 
that you need an understanding of what values a certain operation can 
produce.

In run-time type checked languages (and in untyped lagnuages),  its up 
to the programmer to keep the type system in thier head. This makes the 
type system fairly flexible and lets them use whatever concepts make 
sense to them, but its still a type system. This is useful for novices, 
but tends to scale poorly. It also means that even users who invent a 
sophisticaed type system for thier project are unlikely to share 
concepts with other advanced users.

In compile time typed languages, everyone has to agree on the type 
system. So, in modern languages, you get a push toward more 
sophisticated type systems than your average beginner can cope with, and 
with different concepts than an advanced user from dynamic languages 
would understand.

I think the biggest barrier is the language. It took me forever to 
figure out what a 'row variable' was. As far as I can tell its how you 
do "duck typing" (if it quacks like a duck and walks like a duck...) in 
a static language. Row variable is a good term when you are inventing 
the system or writing a paper on it, but when introducing it to users 
who already know Python saying "duck typing" will make it clear in seconds.

What we really need is a concept map from the popular languages (C, C++, 
Java, Python, Perl) to OCaml. Show common idioms in those languages and 
how they look in OCaml, and if there is a better way in OCaml then show 
that too. It might not make a good Wikipedia article, but it is the sort 
of project well suited to a Wiki. Is there an OCaml Wiki?

--
Alan Falloon


  parent reply	other threads:[~2005-11-04 16:06 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-03 17:26 Wikipedia Jon Harrop
2005-11-03 19:24 ` [Caml-list] Wikipedia Gerd Stolpmann
2005-11-04  2:31   ` skaller
2005-11-04 13:46     ` [Caml-list] what is high-level (was: Wikipedia) Blue Prawn
2005-11-04 15:13       ` Brian Hurt
2005-11-04 15:28         ` David Teller
2005-11-04 16:02           ` skaller
2005-11-04 16:06           ` Alan Falloon [this message]
2005-11-04 16:10             ` [Caml-list] what is high-level William D. Neumann
2005-11-04 16:14             ` David Teller
2005-11-05  0:29             ` skaller
2005-11-05 22:05               ` Michael Walter
2005-11-06 14:28                 ` skaller
2005-11-04 16:50         ` Matt Gushee
2005-11-03 19:30 ` [Caml-list] Wikipedia Kip Macy
2005-11-03 20:46   ` Matt Gushee
2005-11-03 21:08     ` Mike Lin
2005-11-03 21:16 ` Florian Weimer
2005-11-04 17:15 ` Thomas Fischbacher
2005-11-04 21:05   ` Alex Goldman
2005-11-04 21:53     ` Gerd Stolpmann
2005-11-04 22:24       ` Alex Goldman
2005-11-06 19:32 ` Thomas Fischbacher
2005-11-07  6:44   ` Tony Edgin
2005-11-07 12:23     ` Thomas Fischbacher
2005-11-07 12:55       ` skaller
2005-11-07 13:03         ` Thomas Fischbacher

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=436B871A.40906@synopsys.com \
    --to=al.falloon@synopsys.com \
    --cc=David.Teller@ens-lyon.org \
    --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).