From: skaller <skaller@users.sourceforge.net>
To: Serge Aleynikov <serge@hq.idt.net>
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] Scripting in ocaml
Date: Fri, 22 Dec 2006 00:52:42 +1100 [thread overview]
Message-ID: <1166709162.5653.11.camel@rosella.wigram> (raw)
In-Reply-To: <458A8C7B.7050204@hq.idt.net>
On Thu, 2006-12-21 at 08:30 -0500, Serge Aleynikov wrote:
> skaller wrote:
> > As one of the authors of several major pieces of Python,
> > my comment is that whilst it provides great convenience
> > and good code structure .. dynamic typing just doesn't
> > scale.
>
> Could you please illustrate your point by more concrete reasoning.
It isn't a matter of reasoning but experience. Many people believe
static typing is good because it improves the likelihood a program
is correct, perhaps by making it easier for both the human and
machine to reason about the code -- and in particular catch
errors which would otherwise require testing, and even then
the actual location of a bug might be hard to determine.
I guess the arguments for static typing and scalability are
well known. So the reasoning part is clear: we infer larger
programs without dynamic typing are harder to get right.
That has indeed been my experience. For small programs I can
see all at once on the screen, dynamic typing is ok. For larger
programs, the type system seems to help by abstracting the
code, so even the larger bulk of code can be scanned and
remembered as a whole, if not in detail.
I guess static typing allows some kind of divide-and-conquer
approach.
> Erlang uses dynamic typing (or rather strict typing) and scales very well.
Perhaps that is because it is purely functional?
> > The big problem using Ocaml (bytecode) for scripting
> > is probably the ugly dynamic loading support, and
> > for long running systems, the lack of unloading support.
> > (plus the syntax which isn't really well suited to small
> > scale scripting applications).
>
> Why is dynamic loading ugly?
Sorry, I wasn't clear. I meant to refer to dynamic loading in Ocaml,
not in general. Exactly why that is I don't know. Perhaps the
interaction of the static typing and dynamic loading is not
easy because it is not well understood how to make it so,
in Ocaml, and perhaps in general (without losing type safety)
--
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net
next prev parent reply other threads:[~2006-12-21 13:53 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-21 3:41 Denis Bueno
2006-12-21 4:34 ` [Caml-list] " Erik de Castro Lopo
2006-12-21 7:22 ` skaller
2006-12-21 9:12 ` Till Varoquaux
2006-12-21 9:18 ` Chad Perrin
2006-12-21 10:29 ` skaller
2006-12-21 20:21 ` Chad Perrin
2006-12-21 13:30 ` Serge Aleynikov
2006-12-21 13:52 ` skaller [this message]
2006-12-21 14:59 ` Serge Aleynikov
2006-12-21 20:25 ` Chad Perrin
2006-12-21 20:41 ` Daniel Bünzli
2006-12-21 22:16 ` Chad Perrin
2006-12-22 12:21 ` strong/weak typing terminology (was Re: [Caml-list] Scripting in ocaml) Daniel Bünzli
2006-12-22 16:51 ` Tom
2006-12-22 17:34 ` Daniel Bünzli
2006-12-22 18:16 ` skaller
2006-12-22 18:47 ` Daniel Bünzli
2006-12-22 19:42 ` skaller
2006-12-22 20:03 ` David Brown
2006-12-22 20:17 ` Chad Perrin
2006-12-23 3:48 ` skaller
2006-12-23 4:11 ` Chad Perrin
2006-12-22 20:19 ` Chad Perrin
2006-12-23 12:58 ` Daniel Bünzli
2006-12-23 16:06 ` Chad Perrin
2006-12-23 21:50 ` Tom
2006-12-26 6:10 ` Chad Perrin
2006-12-22 20:14 ` Chad Perrin
2006-12-21 21:11 ` [Caml-list] Scripting in ocaml Serge Aleynikov
2006-12-21 21:27 ` Philippe Wang
2006-12-21 22:06 ` Serge Aleynikov
2006-12-22 12:35 ` Jon Harrop
2006-12-21 22:19 ` Chad Perrin
2006-12-22 12:37 ` Jon Harrop
2006-12-22 18:52 ` Chad Perrin
2006-12-22 2:51 ` skaller
2006-12-22 15:20 ` Jon Harrop
2006-12-22 11:32 ` Jon Harrop
2006-12-23 18:50 ` Jon Harrop
2006-12-24 0:15 ` Serge Aleynikov
2006-12-24 3:30 ` skaller
2006-12-21 14:59 ` Richard Jones
2006-12-21 20:27 ` Chad Perrin
2006-12-21 23:35 ` Martin Jambon
2006-12-26 17:14 ` Aleksey Nogin
2006-12-26 23:36 ` Ian Zimmerman
2006-12-27 18:25 ` Aleksey Nogin
2006-12-27 18:39 ` Richard Jones
2006-12-27 19:20 ` Aleksey Nogin
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=1166709162.5653.11.camel@rosella.wigram \
--to=skaller@users.sourceforge.net \
--cc=caml-list@inria.fr \
--cc=serge@hq.idt.net \
/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