caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Chet Murthy <murthy.chet@gmail.com>
To: "Daniel Bünzli" <daniel.buenzli@erratique.ch>
Cc: caml-list@inria.fr, jon@ffconsultancy.com
Subject: Re: [Caml-list] Re: Haskell vs OCaml
Date: Fri, 22 Mar 2013 17:09:16 -0700	[thread overview]
Message-ID: <7497262.o5HBqi0ou5@groupon> (raw)
In-Reply-To: <97B30B8BD4FA43F9B36C3CFBFB51221E@erratique.ch>

On Saturday, March 23, 2013 01:02:51 AM Daniel Bünzli wrote:
> Le samedi, 23 mars 2013 à 00:47, Chet Murthy a écrit :
> > [short answer: because each time that a paying customer is affected by
> > a buggy driver, the vendor of the CLR or JVM spends -serious- money
> > finding and shooting that bug. They spend -serious- money building
> > internal tooling to help them do this. It's expensive and
> > time-consuming, and furthermore consumes -extremely-skilled- people.
> > No OSS language runtime can afford that.]
> 
> I can't speak for what happens with CLR or JVM, but if you bind to OpenGL
> from OCaml you are basically programming with OpenGL's C interface. There's
> no direct interaction between the OpenGL drivers and OCaml's language
> runtime. So I don't think your remark makes sense in that context.

For most C drivers I've seen, the same is true in the JVM.  The
"direct interaction" consists in manipulating/allocating some
heap-objects, and .... stray pointers.  Obv. it's the latter that
cause all the problem.

For example, long ago a (POSIX-threaded) JVM used signals to stop
threads in order to do mark-and-sweep GC.  Unfortunately, there were a
number of C drivers that were not "signal-safe" (didn't restart their
syscalls properly), and so you'd get "interesting" segfaults at GC
time.  The solution involved some hacking to avoid sending signals to
threads in C driver code, but still stopping them when they emerged
(or called code in the JVM, e.g. to allocate heap-memory).

--chet--


  reply	other threads:[~2013-03-23  0:09 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <fa.e3jKyg6bl9+vTkPgypQ4ZRzEoos@ifi.uio.no>
2013-03-18  9:08 ` [Caml-list] " adrian.alexander.may
2013-03-18  9:48   ` Malcolm Matalka
2013-03-18  9:59     ` Gabriel Scherer
2013-03-18 11:05       ` Adrian May
2013-03-18 11:26     ` Kakadu
2013-03-18 18:05       ` [Caml-list] " Chet Murthy
2013-03-20 20:44         ` Jon Harrop
2013-03-20 21:10           ` Yaron Minsky
2013-03-21  0:26             ` Jon Harrop
2013-03-21 20:58               ` Yaron Minsky
2013-03-23 23:33                 ` Richard W.M. Jones
2013-03-21 21:55               ` Török Edwin
2013-03-22 17:51                 ` Jon Harrop
2013-03-22 18:46                   ` Daniel Bünzli
2013-03-22 19:53                     ` Jon Harrop
2013-03-22 20:23                       ` Daniel Bünzli
2013-03-22 22:13                         ` Jon Harrop
2013-03-22 23:35                           ` Daniel Bünzli
2013-03-22 23:47                             ` Chet Murthy
2013-03-23  0:02                               ` Daniel Bünzli
2013-03-23  0:09                                 ` Chet Murthy [this message]
2013-03-23  1:17                               ` Jon Harrop
2013-03-23  1:41                                 ` oliver
2013-03-23  1:15                             ` Jon Harrop
2013-03-23  1:50                               ` Daniel Bünzli
2013-03-25  1:22                               ` Francois Berenger
2013-03-23  1:25               ` oliver
2013-03-19  1:23       ` [Caml-list] " Francois Berenger
2013-03-26 10:36         ` Nicolas Braud-Santoni
2013-03-26  0:49   ` Kristopher Micinski
2013-03-26  2:37     ` Erik de Castro Lopo
2013-03-26  2:57       ` Kristopher Micinski

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=7497262.o5HBqi0ou5@groupon \
    --to=murthy.chet@gmail.com \
    --cc=caml-list@inria.fr \
    --cc=daniel.buenzli@erratique.ch \
    --cc=jon@ffconsultancy.com \
    /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).